gpt4 book ai didi

python - 有什么方法可以通过 cron 作业在 python 中运行 selenium

转载 作者:行者123 更新时间:2023-12-04 19:25:45 25 4
gpt4 key购买 nike

我创建了一个 python 脚本,它使用 selenium 下载一些文件,就像这样。

options = webdriver.ChromeOptions()
#file download path
prefs = {'download.default_directory' : main_directory}
options.add_experimental_option('prefs', prefs)
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.add_argument("--window-size=1920x1080")

driver = webdriver.Chrome(executable_path='chromedriver', options=options)
driver.get(panel_link)
当我在我的 ubuntu 18.04.5 服务器上的终端上执行此脚本时,它运行良好。
但是当这个脚本从 crontab 运行时,它总是在加载 chromedriver 时停止执行。
每次我都收到这个错误,我通过 cron 运行这个 python 脚本。 Message: Service chromedriver unexpectedly exited. Status code was: -5我试过的:
 1. add python script directly in crontab 
2. created other script ```runpython.sh``` and then run python script from there.
3. created an apache server and tried to execute python script from php
以上所有方法都无法正常工作。
请注意,当我直接执行时,此 python 脚本执行得很好,但通过 cron 执行时它不起作用。
计划: 48 21 * * * export DISPLAY=:0 && python3 /root/script/application_file_download.py >> /home/log/cron.log 2>&1

最佳答案

您可以尝试几件事:

  • 为了理智,添加一个将某些内容写入日志文件的作业,以确保您的 cronjob 设置正确。* * * * */1 echo $(date)" cronjob ran" >> /home/<user>/cronlogs/logs.log
  • 请注意,路径应该是绝对路径。 CRON 将 PATH 限制为 /bin:/user/bin .如果您的命令位于不同的位置,您可以提供命令的完整路径
  • 检查 chromedriver 文件的执行权限。确保运行 cronjob 的用户具有所需的权限。 ls-l
  • 关于python - 有什么方法可以通过 cron 作业在 python 中运行 selenium,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71255632/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com