小编典典

Scrapy Python设置用户代理

scrapy

我试图通过在项目配置文件中添加额外的一行来覆盖我的crawlspider的用户代理。这是代码:

[settings]
default = myproject.settings
USER_AGENT = "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36"

[deploy]
#url = http://localhost:6800/
project = myproject

但是,当我在自己的Web上运行搜寻器时,我注意到Spider不会使用我的自定义用户代理,而是默认的“ Scrapy / 0.18.2(+ http://scrapy.org)”。谁能解释我做错了什么。

注意:

(1)。当我尝试全局覆盖用户代理时,它起作用:

scrapy crawl myproject.com -o output.csv -t csv -s USER_AGENT="Mozilla...."

(2)。当我从配置文件中删除行“ default = myproject.setting”,并运行scrapy crawl myproject.com时,它说“找不到spider..”,因此我觉得这种情况下不应删除默认设置。

非常感谢你的事先帮助。


阅读 517

收藏
2020-04-08

共1个答案

小编典典

将您的USER_AGENT行移至settings.py文件,而不是scrapy.cfg文件中。settings.py应该与items.py使用scrapy startproject命令处于同一级别,在这种情况下,它应该类似于myproject/settings.py

2020-04-08