Python KeyError:';驱动程序&x27;打印中(response.request.meta[';driver';].title)

Python KeyError:';驱动程序&x27;打印中(response.request.meta[';driver';].title),python,selenium,scrapy,Python,Selenium,Scrapy,我得到错误键error:“driver”。 我想用scrapy selenium创建一个webcrawler。我的代码如下所示: class TestSpider(Spider): name="test" start_urls = ["http://crawler-test.com/mobile/dynamic"] def start_requests(self): for url in self.start_urls: yiel

我得到错误键error:“driver”。 我想用scrapy selenium创建一个webcrawler。我的代码如下所示:

class TestSpider(Spider):
name="test"
start_urls = ["http://crawler-test.com/mobile/dynamic"]

def start_requests(self):
    for url in self.start_urls:
        yield SeleniumRequest(url=url, callback=self.parse)

def parse(self, response):
    print(response.request.meta['driver'].title)
在我添加的爬虫程序的设置中:

SELENIUM_DRIVER_NAME = 'chrome'
SELENIUM_DRIVER_EXECUTABLE_PATH = which('chromedriver')
SELENIUM_DRIVER_ARGUMENTS=['--headless']
DOWNLOADER_MIDDLEWARES = {'scrapy_selenium.SeleniumMiddleware': 800}
几乎所有内容都来自scrapy selenium文档。


非常感谢您的帮助。

答案可从@pcalkins评论中找到

有两种方法可以解决此问题:

最快的一个:将chromedriver.exe文件粘贴到spider所在的目录中

最佳路径:在SETTINGS.PY中将潜水员路径放入
SELENIUM\u DRIVER\u EXECUTABLE\u path=此处的路径


这是你不会使用的('chromediver')

这的预期结果是什么?:response.request.meta['driver']。titleAs说我几乎从docu网站上拿走了所有东西。所以我不确定。但是我想它会给我这个网站的标题…我想你是对的,()但是不熟悉scrapy/selenium。。。似乎该键的值应该是对webdriver的引用。也许webdriver不存在,或者“which”找不到它。你可以把它的路径放在那里。。。。其中“SELNIUM\u驱动程序\u可执行路径”是。。。(或者检查“which”是否返回路径。)在进行故障排除时,我还要注释掉这一行:SELENIUM_DRIVER_ARGUMENTS=['--headless']。这样,如果你看不到Chrome的发布,你就会知道事情的硒方面出了问题。