繁体   English   中英

如何为 Firefox 设置 Selenium Python 环境

[英]How to set up a Selenium Python environment for Firefox

如何为 Firefox 设置 Selenium Python 环境?

我使用的是 Firefox 50、Selenium 3、Python 3.5。 我尝试了许多二进制文件并在环境变量PATH 中复制 geckodriver 等。

测试机应为Selenium v​​. 3.0.2、Firefox v. 51.0.1(最新版本)和geckodriver v. 0.14。 如果您使用的是 Linux,请执行以下步骤:

[在 GitHub 上或从 API )查找最新版本并用它替换 wget 链接。 下载和安装过时的版本可能会导致“错误”行为。]

apt-get update
apt-get install firefox
pip3 install selenium==3.0.2
wget https://github.com/mozilla/geckodriver/releases/download/vX.XX.0/geckodriver-vX.XX.0-linuxXX.tar.gz -O /tmp/geckodriver.tar.gz \
  && tar -C /opt -xzf /tmp/geckodriver.tar.gz \
  && chmod 755 /opt/geckodriver \
  && ln -fs /opt/geckodriver /usr/bin/geckodriver \
  && ln -fs /opt/geckodriver /usr/local/bin/geckodriver

从可用的压缩预构建二进制文件中选择适用于您的操作系统的版本。

下面是一个运行示例:

from selenium import webdriver
driver = webdriver.Firefox()
driver.get('http://google.com')
print(driver.title)
driver.quit()

据我了解,您希望使用 Python 进行开发,使用 Selenium 库并使用 Firefox webdriver。

  1. 安装 Python(Python 3 已经包含 pip)
  2. 安装 Selenium( pip install selenium或者一些像PyCharm这样的 IDE 建议安装库,只需导入 Selenium)
  3. 下载Mozilla 网络驱动程序
  4. 享受!
  1. 在 Windows 中安装 Python: https : //www.python.org/downloads/

  2. 然后从命令行运行 pip install: pip install selenium

  3. 下载 Gecko/Chrome/Internet Explorer 驱动程序并将 driver.exe 路径添加到 PATH 环境变量中。 所以需要在运行 Selenium driver.Firefox() / driver.Chrome() 方法时设置路径。

driver = webdriver.Firefox()

追溯(最近一次通话):

File "/home/deepu/.local/lib/python3.6/site-packages/selenium/webdriver/common/service.py", line 74, in start
stdout=self.log_file, stderr=self.log_file)
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'geckodriver': 'geckodriver'

在处理上述异常期间,发生了另一个异常:

追溯(最近一次通话):

File "<stdin>", line 1, in <module>
File "/home/deepu/.local/lib/python3.6/site-packages/selenium/webdriver/firefox/webdriver.py", line 140, in __init__
self.service.start()
File "/home/deepu/.local/lib/python3.6/site-packages/selenium/webdriver/common/service.py", line 81, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.

**** Ubuntu 18无法使用Firefox

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM