1. 程式人生 > >linux python 爬蟲 伺服器部署 crontab定時執行

linux python 爬蟲 伺服器部署 crontab定時執行

由於python版本比較多,python2與python3相容又不好,導致很多擴充套件庫版本也很多,安裝擴充套件庫就容易碰到問題,有些直接yum就可以安裝,有些需要用pip安裝,有些需要直接下載安裝,我這裡就列舉幾個我碰到的吧。
可以用virtualenv這個虛擬環境
也可以用conda這個工具,我這裡就是手動安裝沒有藉助這種擴充套件庫管理工具。
先把本地python專案上傳到伺服器,可以用rz工具,也可以用svn,我是先執行,再根據報錯資訊新增擴充套件庫,這裡安裝python34。

2.先安裝pip3: yum search pip
可以看到:
這裡寫圖片描述
安裝pip3: yum install python34-pip -y
然後看版本資訊:pip3 –version 能看到版本資訊則安裝成功。

3.執行spider.py:python3 spider.py
首先看一下爬蟲引用了那些擴充套件:
這裡寫圖片描述
看到報錯(如果報錯跟re相關,則直接安裝正則擴充套件即可:pip3 install regex):
這裡寫圖片描述
可以看到缺少mysql.connector擴充套件
安裝:yum search mysql-connector
這裡寫圖片描述
可以看到版本不正確,只支援py2,不必安裝了
pip安裝:pip3 search mysql-connector
這裡寫圖片描述
找到了,安裝:pip3 install mysql-connector
但是:
這裡寫圖片描述
報錯了!
換種方式安裝,下載下來自己手動安裝:
wget

https://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python-2.1.5.tar.gz –no-check-certificate
如果沒有安裝wget工具先安裝wget:yum install wget -y
下載下來後解壓安裝:
python3 setup.py install
安裝成功,然後在執行爬蟲:python3 spider.py
這裡寫圖片描述
庫檔案問題已經變了
當然用pymysql更簡單一些,用pip3可以直接安裝成功

4.可以看到現在是缺少requests擴充套件,安裝:
pip3 install requests
安裝pyquery
pip3 install pyquery
安裝Beautifulsoup:
pip3 install Beautifulsoup
這裡寫圖片描述


報錯了,尋找解決辦法,進Beautifulsoup官網:
這裡寫圖片描述
可以看到安裝版本不正確:
pip3 install Beautifulsoup4
安裝成功。
python3 spider.py 執行正常,能夠爬取列印資料

5.新增定時任務:
crontab -e
輸入:
/20 * * * python3 /project/python/spider.py
這個任務代表每20分鐘以python3 執行/project/python/spider.py檔案一次,規則如下:
這裡寫圖片描述
儲存退出,如果沒有錯誤提示說明格式正確。
新增任務成功。
檢視定時任務結果:
cat /var/log/cron
我這裡爬到的列印結果,此時資料庫也應該有資料了。
這裡寫圖片描述

相關推薦

linux python 爬蟲 伺服器部署 crontab定時執行

由於python版本比較多,python2與python3相容又不好,導致很多擴充套件庫版本也很多,安裝擴充套件庫就容易碰到問題,有些直接yum就可以安裝,有些需要用pip安裝,有些需要直接下載安裝,我這裡就列舉幾個我碰到的吧。 可以用virtualenv這個

linux服務器上使用crontab指令執行制定PHP文件,生成定時任務。

php sage 對象 安裝 dbn 個人 mage message into 首先 寫個 PHP文件 ,我寫的是向數據庫表插入數據,如下圖 <?php $dbms=‘mysql‘; //數據庫類型 $host=‘localhost‘; //數據庫主機名 $dbN

linux crontab定時執行任務

apache。 它的 相同 24小時 介紹 window 進度 打開 屏幕截圖 在使用一個計算機系統時,常常需要在日程表上執行某些重復的工作。你可以通過使用Linux Cron工具和Crontab命令更簡便地執行每一次所需的命令,而不是手動去執行。想知道如何使用這些命令在L

linux Crontab定時執行JAR

在linux下面執行java程式,一般情況下我們先打包成jar檔案,然後放在linux下,用指令碼去執行它。 time.sh: #!/bin/bash   export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64 exp

PHP定時任務執行處理、Crontab定時執行程式,Linux設定定時任務(教程案例)

【第一步】:先寫task.sh指令碼檔案。 【第二步】:設定Crontab定時時間,定時執行task.sh指令碼檔案 【案例一】:每月1號、15號的06:10點,定時備份網站原始碼: 【第一步】:先寫youhutong.sh指令碼檔案。 [[email pr

Linux下的crontab定時執行任務命令詳解

   crontab命令常見於Unix和類Unix的作業系統之中,用於設定週期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於“crontab”檔案中,以供之後讀取和執行。該詞來源於希臘語 chronos(χρνο),原意是時間。通常,crontab儲存的指令被守護

linux下利用crontab定時執行PHP指令碼

1、使用crontab &ndash;e編輯定時任務   內容為:   xx:xx:xx 執行一個test.php檔案   2、php檔案必須在檔案頭一行,加上直譯器路徑(就象perl做的那樣)   #!/usr/local/bin/php   PHP的

mac上使用 crontab 定時執行python指令碼

網路是給力的,居然還真有,頓時感覺學海無涯哇。 1. crontab -e 來編輯自定義自己的任務 【每天的 14點55分執行 python 指令碼】 55 14 * * * python /Users/hanjing/Desktop/pythonworkspace/yangcheapp/sendmai

利用 Linux crontab 定時執行 PHP

啟動linux定時服務:service crond start 檢視當前定時任務: crontab -l 新增新定時任務:crontab -e 先是測試crontab對於普通任務能否執行: */1 * * * * date >> /opt/web/

Linuxcrontab——定時執行任務,表示式編寫

簡介 Linux crontab和Windows task schedules非常的相似。Crontab可以用來在系統中定期的執行任務。比如:寫了一個爬蟲需要每天早上八點執行,就可以用到Crontab;安裝的Tomcat伺服器需要每天凌晨重啟一次,也可以使用到

linux利用crontab定時執行java程式碼(jar)

這是在上一篇部落格https://blog.csdn.net/huihuiph/article/details/80237562 上新增的功能,這次在linux自動執行檔案轉移和刪除。廢話不多說,直接上程式碼邊分析:第一步:準備好java程式這裡不囉嗦,可看上一篇程式碼。儲存

Linux】shell呼叫Java程式main方法通過crontab定時執行

最近一個專案需要寫一個batch定時讀取檔案往資料庫裡插入記錄,第一次寫,遇到好多問題,記錄一下。 先從shell如何呼叫java說起 建立如下目錄結構 batch                          根目錄 ├── bin                

crontab定時執行指令碼(linux下)

Linux有一個稱為crond的守護程式,主要功能是週期性地檢查 /var/spool/cron目錄下的一組命令檔案的內容,並在設定的時間執行這些檔案中的命令。使用者可以通過crontab 命令來建立、修改、刪除這些命令檔案。 例如,建立檔案crondFile,內容為“0

crontab 定時執行python指令碼

參考網址:http://zhidao.baidu.com/question/145860117.html <pre id="answer-content-440639755" class="answer-text mb-10" name="code" style="white-space: pre-

python爬蟲scrapy之如何同時執行多個scrapy爬行任務

還需 學習 lis 參數 文件名 其中 .project 自定義 com 背景:   剛開始學習scrapy爬蟲框架的時候,就在想如果我在服務器上執行一個爬蟲任務的話,還說的過去。但是我不能每個爬蟲任務就新建一個項目吧。例如我建立了一個知乎的爬行任務,但是我在這個爬行任務中

[QNAP crontab 定時執行程式

body dex 註意 tab oot div 每日 crond onf 註意要自動執行的 sh 檔不要放在 /root 裡, 不然韌體更新後檔案會不見, 要放在個人帳號的資料夾,例如 /share/homes/帳號/ QNAP 的 crontab 放在 /etc/con

爬蟲部署定時任務是發生的問題

awl 爬蟲 line mman scrapy crawl 定時 錯誤 anaconda 發生的錯誤信息為: ## crawl.sh: line 8: scrapy: command not found ## 解決措施: ## PATH=$PATH:/da

crontab 定時執行任務

usr pac 啊啊啊 oca CA 日期 and 基本 ron 今天腦殘了,公司有個任務要每小時執行一次,然後我就 /1 * commond結果被老大啪啪打臉了,emmmm前面的分鐘寫的星號,肯定是每分鐘啊啊啊啊啊啊啊啊啊啊,所以再來學習一遍這個命令。 基本

crontab定時執行任務

標準輸入 管理 user shell 形式 也會 處理 例如 amp crontab定時執行任務一、意義通過crontab 命令,我們可以在固定的間隔時間執行指定的系統指令或 shell

crontab定時執行datax

sep info root ron containe record edi cmd 執行 記錄下使用crontab,datax定時同步數據遇到的問題。 1.開始使用如下配置,死活不執行。網上說crontab環境便利的問題,設置了也沒反應。 [root@hxjk_test_