所以我试图抓取一个使用JavaScript来显示一些文本的网站。我发现我应该使用硒WebDrivers代替requests.get(),所以我试图用PhantomJS webdriver的,然而,这没有工作的,每当我试图凑这个网站它会成功地刮它,但该网站会生成HTML沿着这条线:Python - Firefox Selenium'预期的浏览器二进制位置,但无法在默认位置找到二进制'
<p>Could not find page</p>
所以我猜测WebDriver工作不正常。我现在试图使用FireFox WebDriver - Geckodriver。该.exe文件的路径是在我的道路,但是当我在Python
browser = webdriver.Firefox()
运行此命令它吐出来的“中找不到PATH指定geckodriver.exe”的错误。因此,而不是说,我用executable_path参数在Firefox(),所以它看起来是这样的:
browser = webdriver.Firefox(executable_path='path/to/geckodriver/')
当我现在运行它,它会打开geckodriver.exe(不显示命令提示符屏幕上的任何东西)和吐出这个错误在IDLE:
WebDriverException: Message: Expected browser binary location, but unable to find binary in default location, no 'moz:firefoxOptions.binary' capability provided, and no binary flag set on the command line.
但是,当我尝试使用ChromDriver它工作正常。我不明白为什么这个工程和别人不?
问题:
- 为什么不PhantomJS工作?
- 为什么不GeckoDriver工作?
- 为什么ChromeDriver工作?