【问题标题】:Facebook url returning an mobile version url response in scrapyFacebook url 在 scrapy 中返回移动版 url 响应
【发布时间】:2012-06-21 09:30:47
【问题描述】:

我有一个问题,可能很奇怪,但想知道,

我尝试通过 scrapy 使用 URl www.facebook.com 访问 facebook。我已经在 start_url 中给出了它。运行后我得到了http://m.facebook.com/?refsrc=http%3A%2F%2Fwww.facebook.com%2F&_rdr 的响应,当我们在浏览器中打开这个url 时,我可以期待这是facebook 的移动视图。那么为什么响应是移动视图而不是我们在桌面上打开时能够看到的一般视图。

在此先感谢......

【问题讨论】:

  • 尝试检查 userAgent 字符串。我猜,如果 facebook 将 useragent 检测为移动浏览器,它通常会重定向到 http://m.facebook.com
  • @avinash:感谢您的回复,抱歉我没有得到“检查 userAgent 字符串”?

标签: python url scrapy


【解决方案1】:

有一个全局设置:USER_AGENT

更新:

你知道,也许处理移动版本毕竟是一个优势。其他站点在无法执行 javascript 时将浏览器重定向到其他页面:

<noscript> <meta http-equiv="refresh" content="0; URL=/homedepot?_fb_noscript=1" /> </noscript>

处理无 js 版本或移动版网站意味着页面尺寸更小,页面上的附加信息更少 - 因此 html 不会随着时间的推移发生太大变化,您的 xpath 查询仍然有效。

在这种情况下,只需在 Firefox 中禁用 JS 或在其中设置不同的 User-Agent 即可获得与 scrapy 获取的相同页面。这里有更多关于如何使用 Firefox 测试 scrapy 的提示:Using Firefox for scraping

【讨论】:

    猜你喜欢
    • 2017-03-27
    • 1970-01-01
    • 2016-02-20
    • 1970-01-01
    • 2017-10-13
    • 1970-01-01
    • 2014-05-19
    • 1970-01-01
    • 2018-12-24
    相关资源
    最近更新 更多