crontab 執行有中文編碼的程式時,出現錯誤 : UnicodeEncodeError: ‘ascii’ codec can’t encode character

最近寫了幾隻爬蟲,爬一些網站,然後存到 mysql 裡面,在使用 crontab 排成執行時,發生了錯誤。

在終端機或是 spyder 上執行都是沒問題的,但是 crontab 就是跑不出來,於是使用了我在另一篇文章提到的:用 crontab 安排作業排程後,如何知道裡面發生了什麼事?

顯示出這個錯誤:UnicodeEncodeError: ‘ascii’ codec can’t encode character

Continue reading “crontab 執行有中文編碼的程式時,出現錯誤 : UnicodeEncodeError: ‘ascii’ codec can’t encode character"

用 crontab 安排作業排程後不動,該如何找錯?

當然,你可以寫在程式裡面,在進行的當下就產出文字檔、報表,或甚至圖片檔都行。

但有時候我們並不想要有這麼多的記錄檔,或是我們在測試的時候,程式都會動,但排入 crontab 之後,它就不動或是產出錯誤訊息了,就像我在另一篇裡面寫到的問題,中文編碼與 crontab 產生衝突,這是你怎麼測都測不出的吧。

這時候可以用一個很簡單的方法,也就是在你的 crontab 語法後面,加上一個 > 然後指派一個空的 .txt 檔給它,它就會把你程式裡面寫的 print 印在裡面,或是如果有錯誤,也會顯示在檔案裡。 Continue reading “用 crontab 安排作業排程後不動,該如何找錯?"