Selenium 无法正常工作 Mac [重复]
Posted
技术标签:
【中文标题】Selenium 无法正常工作 Mac [重复]【英文标题】:Selenium not working Mac [duplicate] 【发布时间】:2018-07-02 14:04:57 【问题描述】:我刚刚开始学习使用 selenium 进行网页抓取。我不确定为什么会出现以下错误。我已经分享了下面的图片。 以下代码似乎不起作用。
chrome_path = r"\\Users\\prateek\\Desktop\\MSc\\MWA\\chromedriver.exe"
browser = webdriver.Chrome(chrome_path)
# the url we want to open
url = u'https://www.currys.co.uk/gbuk/phones-broadband-and-sat-nav/mobile-phones-and-accessories/mobile-phones/apple-iphone-8-64-gb-space-grey-10168742-pdt.html?intcmpid=display~RR'
# the browser will start and load the webpage
browser.get(url)
还有更多,但这似乎不起作用 我得到的错误 Error I'm getting
【问题讨论】:
请不要发布错误图片。花点时间复制、过去和格式化错误。此外,该站点上必须有数十个“chromedriver must be in path”问题。我建议你做更多的研究,并分享你学到的东西。 描述一切的错误本身 【参考方案1】:Python 的 r""
文字语法会自动转义所有斜杠,这就是为什么它更适合用于文件路径等内容。
尝试使用
chrome_path = r"\Users\prateek\Desktop\MSc\MWA\chromedriver.exe"
【讨论】:
另外,Mac 上的可执行文件通常没有.exe
扩展名,你有正确版本的 chromedriver 吗?
哦。这可能是问题所在。不要认为 .exe 扩展名是问题所在。 @Hans Z,我确实尝试过,但它似乎不起作用。给出同样的错误【参考方案2】:
使用chromedriver
二进制文件来初始化MAC OSX
上的Chrome
Web 浏览器,您需要传递参数executable_path
以及chromedriver
二进制文件的绝对路径在单引号\
前面加上原始开关r
如下:
driver = webdriver.Chrome(executable_path=r'\Users\prateek\Desktop\MSc\MWA\chromedriver')
【讨论】:
@paddy 对此/任何对您有用/对您有用的答案,以造福未来的读者。【参考方案3】:来自chromedriver getting started,在设置部分中指出:
帮助 WebDriver 找到下载的 ChromeDriver 可执行文件
这些步骤中的任何一个都可以解决问题:
在 PATH 环境变量中包含 ChromeDriver 位置 在实例化 webdriver.Chrome 时包含 ChromeDriver 的路径(参见下面的示例)
您正在尝试使用 2 选项,但您传递了错误文件的路径(.exe 文件,当然,在 macOS 中不可执行)。
所以,首先你必须(从here)下载正确的chromedriver。
假设您使用当前最新的 chrome 版本作为浏览器,您必须从 2.35 (https://chromedriver.storage.googleapis.com/index.html?path=2.35/) 下载 chromedriver_mac64.zip,将其解压并将解压后的可执行文件的路径插入你的代码。
例如:
driver = webdriver.Chrome(executable_path=r'/yourPath2/chromedriver')
driver.get("https://www.currys.co.uk/gbuk/phones-broadband-and-sat-nav/mobile-phones-and-accessories/mobile-phones/apple-iphone-8-64-gb-space-grey-10168742-pdt.html?intcmpid=display~RR")
请注意您的 chrome 浏览器版本,因为 chromedriver 可能不支持。您可以通过release notes了解这一点。
【讨论】:
嗨,我已经做到了。我下载了 chromedriver_mac64.zip,它仍然给我同样的错误。无法弄清楚它为什么这样做。 您必须提取 .zip 并在代码中插入提取文件的路径以上是关于Selenium 无法正常工作 Mac [重复]的主要内容,如果未能解决你的问题,请参考以下文章
Selenium webdriver python元素屏幕截图无法正常工作
无法在 Mac 上设置 ruby-selenium Webdriver
无法在 pycharm 上运行简单的 webdriver - mac [重复]