如何在 ubuntu 中为 python 脚本启用 chromedriver?

如何在 ubuntu 中为 python 脚本启用 chromedriver?

对于计划任务,我希望使用 python 脚本执行 selenium webdriver。

我尝试过以下解决方案:

  1. https://stackoverflow.com/questions/50117377/selenium-with-chromedriver-doesnt-start-via-cron

但问题并没有得到解决。

chromdriver 的位置:

~/Documents/Python/Chromedriver/chromedriver

答案1

在 cron 中指定完整路径。

下一个 cron 任务包括:

  • DISPLAY如果你不想使用,请指定变量来访问你的显示无头模式.使用$ env | grep DISPLAY即可获得。
  • PATH变量并chromedriver指定路径。我已复制chromedriver/usr/local/bin
  • 完整路径python3.8
  • Python 脚本的完整路径

$ crontab -e

* * * * * export DISPLAY=:0; PATH=$PATH:/usr/local/bin; /usr/bin/python3.8 /home/user/PycharmProjects/seleniumtest/seltest.py build

在您的情况下,指定 chromdriver 位置的路径:

* * * * * export DISPLAY=:0; PATH=$PATH:/home/user/Documents/python/Chromedriver; /usr/bin/python3.8 /home/user/PycharmProjects/seleniumtest/seltest.py build

笔记:我使用以下参数在 PyCharm 中创建了一个 python 项目:

在此处输入图片描述 在此处输入图片描述 在此处输入图片描述

脚本取自这里

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("http://www.python.org")
assert "Python" in driver.title
elem = driver.find_element_by_name("q")
elem.clear()
elem.send_keys("pycon")
elem.send_keys(Keys.RETURN)
assert "No results found." not in driver.page_source
driver.close()

此外,我还需要安装一些软件包:

$ sudo apt install python3-pip
$ pip3 install selenium
$ cd ~/Downloads
$ unzip chromedriver_linux64.zip
$ sudo cp chromedriver /usr/local/bin/

相关内容