我试图从带有动态内容的网址中抓取一些数据,并且学到了Selenium可以完成任务。
from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
binary = FirefoxBinary('/Applications/Firefox.app/Contents/MacOS')
driver = webdriver.Firefox(firefox_binary=binary)
上面的4行给了我
OSError: [Errno 13] Permission denied
我用谷歌搜索,似乎其他人遇到了类似的问题,但我找不到任何解决方案。有些似乎是针对Windows而其他似乎是针对Java而不是Python。
答案 0 :(得分:0)
运行代码时,我遇到了同样的错误。但是,如果您只是想使用selenium打开Firefox浏览器并从那里开始,只需使用:
from selenium import webdriver
browser = webdriver.Firefox()
browser.get("http://www.google.com")
它将触发初始网络浏览器并打开网页。
答案 1 :(得分:0)
以下行导致问题:
binary = FirefoxBinary('/Applications/Firefox.app/Contents/MacOS')
确保在文件系统上提供正确的二进制路径,而不是在应用程序启动器中,即
binary = FirefoxBinary('/usr/bin/firefox')