admin管理员组

文章数量:1531699

1.URL的地址可以反映请求用户所在的区域,区域不同返回的数据也不同
例如:http://www.xxxx/en/xxx 和 http://www.xxxx/cn/xxx
就可以看出不同

2.请求用户的IP地址所在的区域,如果使用代理,则返回的数据也可能不同。

3.请求头的设置不同,例如:user-agent,accept-language不同也会导致返回的数据不同。
scrapy有自己默认的scrapy相关的user-agent,且默认accept-language为en,所以返回的内容与chrome浏览器返回的内容不同。

4.chromedriver 与 Chrome浏览器的版本不一致。chromedriver下载地址,每个文件夹的notes.txt文件中都有对本版本对应chrome浏览器的说明。chromedriver下载之后需要放在/usr/local/bin下(mac)

补充:
1.可以在chrome浏览器网址输入:chrome://version/ 来查看详细的信息。

2.scrapy可以断点调试查看:response对象里面的request对象里面的headers对象的user-agent,这个是请求头,注意与响应头区分开来。

3.scrapy的请求头设置可以在setting.py文件中:

DEFAULT_REQUEST_HEADERS = {
    'accept-language': 'zh-CN,zh;q=0.8',
    'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'
}

本文标签: 页面数据浏览器scrapyrequest