我在Raspberry PI上運行Ubuntu Mate
。我用Python編寫了一個網頁報廢器,我想每天運行一次。我想通過使用sudo crontab -e
將是一種很好的方法。我遇到的問題是當cronjob
啓動我的python腳本時,python腳本拋出一個導入錯誤並且不運行。但是,當我直接從命令行執行python腳本時,它的運行沒有問題。Crontab在樹莓派上啓動python腳本會導致導入錯誤
我讀到有人用shell腳本啓動它們的python腳本,所以我也試過了。同樣,當我直接從命令行執行shell腳本時,它會按預期工作,但在由cronjob
執行時不起作用。
出於測試目的,現在我有cronjob
執行每分鐘,直到我找出發生了什麼。一旦它按預期工作,我會將其執行的時間更改爲更接近我想要的。
爲了讓您瞭解我的文件的外觀,請查看下面的內容。正如你所看到的,所有需要運行的文件都具有執行prilivages。
web_scraper.py#!/usr/bin/env python
import click
import logging
import os
from datetime import datetime
from bs4 import BeautifulSoup as bs
import re
import urlparse
...
start.sh
#!/bin/bash
cd /home/elmer/
python web_scraper.py
須藤的crontab -e
* * * * * sh /home/elmer/start.sh >> /home/elmer/cron.log 2>&1
cron.log
Traceback (most recent call last):
File "web_scraper.py", line 6, in <module>
import click
個LS -lh
(py27)[email protected]:$ ls -lh
total 56K
-rw-rw-r-- 1 elmer elmer 2.9K Mar 17 20:38 cron.log
-rwxrwxrwx 1 elmer elmer 8.2K Mar 16 09:54 web_scraper.py
-rwxrwxrwx 1 elmer elmer 64 Mar 17 20:02 start.sh