如何使bash文件每2小时运行一次python脚本?
我在虚拟环境中有一个python脚本,我想使用cronjob每2小时运行一次 这是我的python脚本:如何使bash文件每2小时运行一次python脚本?,python,linux,cron,cron-task,Python,Linux,Cron,Cron Task,我在虚拟环境中有一个python脚本,我想使用cronjob每2小时运行一次 这是我的python脚本: from selenium import webdriver from selenium.webdriver.common.keys import Keys import time PATH = "/usr/bin/chromedriver" driver = webdriver.Chrome(PATH) driver.get("http://bi
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
PATH = "/usr/bin/chromedriver"
driver = webdriver.Chrome(PATH)
driver.get("http://bitcoin.works")
driver.maximize_window()
time.sleep(2)
driver.find_element_by_link_text('LOGIN').click()
time.sleep(3)
driver.find_element_by_id("login_form_btc_address").send_keys("MyEmail")
driver.find_element_by_id("login_form_password").send_keys("securePassword")
driver.find_element_by_id("login_button").click()
time.sleep(4)
driver.find_element_by_class_name("pushpad_deny_button").click()
time.sleep(7)
driver.find_element_by_id("free_play_form_button").click()
time.sleep(3)
driver.quit()
我还在我的文件夹中创建了一个名为run.sh的文件
它有以下内容
#!/bin/sh
python run.py
我比你做的还要多
chmod a+x run.sh
之后,我在crontab-e下编辑了我的文件
对此
0 */2 * * * cd Documents/scraping && /bin/bash/ run.sh
为什么我需要cd文档/刮片和&/bin/bash/run.sh行?确保您的bash脚本具有可执行权限:
chmod +x run.sh
键入crontab-e
然后键入以下命令:
0*/2***cd/location/of/folder&&/bin/bash run.sh
#别忘了在文件末尾留一个空行
将目录更改为文件所在的位置很重要,因为
run.sh
中的命令不是绝对路径 您可以将此行添加到crontab:
0 */2 * * * python <path>/run.py
在cronjob中尝试以下命令
0 */2 * * * /bin/bash/ ~/Documents/scrapping/run.sh
我想这可能会有帮助我的python文件没有保存在/bin/bash中-我的python文件在Documents/scraping/run.py中我想我需要运行.sh文件?@charliebrown:我后来意识到你有
run.py
和run.sh
。试一下我上面提到的步骤:)在crontab-e中,我把这一行放在0*/2***cd Documents/scrasting&&/bin/bash/run.sh中,这足以让它运行吗?我的sh文件的内容是否正确?您可以通过从终端执行它来验证您的run.sh
是否正确执行。在终端上,将目录更改为run.sh
的位置,然后键入/run.sh
,如果这样做有效,则cronjob应该正确执行。为什么我需要包括?我不能只执行0*/2***python run.pycrontab是一个系统级实用程序。它需要知道文件的位置,但python Documents/scraping/run.py不起作用
0 */2 * * * /bin/bash/ ~/Documents/scrapping/run.sh