在scrapy终端中手动启动爬虫全部正常,通过scrapyd部署启动包含selenium插件的爬虫,运行爬虫文件,但不运行selenium插件,没有出现爬虫结果,但是查看scrapyd的job正常启动,运行时间只有1s。
通过scrapy的settings设置selenium插件,
SELENIUM_DRIVER_NAME = 'chrome'
SELENIUM_DRIVER_EXECUTABLE_PATH = which(r'./chromedriver')
SELENIUM_DRIVER_ARGUMENTS = []
在spider中通过yield SeleniumRequest使用selenium。
scrapyd报错:
venv/lib/python3.8/site-packages/scrapy/utils/project.py:81: ScrapyDeprecationWarning: Use of environment variables prefixed with SCRAPY_ to override settings is deprecated. The following environment variables are currently defined: JOB, LOG_FILE, SLOT, SPIDER
warnings.warn(
(该警告已经解决)
但是目前使用scrapyd调度spider仍然无法启动selenium插件,是否因为scrapy-selenium插件不支持scrapyd?
求解决!如何才能让scrapyd正常使用selenium插件?
Use of environment variables prefixed with SCRAPY_ to override settings is deprecated 过时了 换写法
一些废弃的设置,需要注释掉或者删除下
具体操作如下
1、 /scrapy/utils/project.py注释掉SCREPY_为前缀的变量
2、通过检查我的环境变量(通过提示符下的这个命令:)
printenv
我发现SCRAPY_SETTINGS_MODULE指向我的scrapy设置。
这正是警告“使用以 SCRAPY_ 为前缀的环境变量”。我
unset SCRAPY_SETTINGS_MODULE
已经能够将它从环境中删除。
```
另外这只是个以前语法的废弃警告,一般不算报错,
请查看是否还有其他报错。
如有问题及时沟通
project.py 81行,调用的方法被丢弃了,换新版本的方法或者安装旧版本的包
用printenv看看环境变量是否配错了