python'학습강국'작업 자동화 (3) linux의crontab를 이용하여 데이터베이스에 있는 파충류 데이터 자동 유지
6099 단어 python 프로젝트 연습
기초 지식
1.1 linux 스케줄
#
crontab -e
#
crotab -l
# crond,
systemctl restart crond
3. crontab 형식
* * * * * user command
1.2 셸 프로그래밍# git , , git 。
git init
# , , f 。
git add -f file
#
git commit -m "text"
# github , link github .git
git remote add origin link
# pull ,
git pull origin master
#origin ,master master 。
git push -u origin master
2. 셸 스크립트 작성
2.1 디렉토리 구조
내가 생각하는 디렉토리 구조는 다음과 같습니다.
[root@tysonscloud QIANGGUO]# tree .
.
|-- __init__.py
|-- linux_crontab
| `-- scripts | `-- QGNews_maintain.sh
|-- python ( ) .xls
|-- QGNews_maintain_log
| `-- 2019-02-06 | `-- 2019-02-06_16:08.log
`-- scrapy |-- __init__.py |-- news_scrapy.py |-- news.sqlite `-- test_02.py
2.2 셸 스크립트
baseLogdir=/root/QIANGGUO/QIANGGUO/QGNews_maintain_log
everydayLog=$baseLogdir/$(date +%F)/
[ ! -d "$everydayLog" ] && mkdir -p $everydayLog
#
nowtime=`date +%F_%H:%M`
# , push ,
python /root/QIANGGUO/QIANGGUO/scrapy/news_scrapy.py >$everydayLog/${nowtime}.log 2>&1
#
git init
git add -f $everydayLog/${nowtime}.log
git commit -m " ${nowtime} , crontab "
git remote add origin [email protected]:chinaltx/QIANGGUO.git
git pull origin master
git push -u origin master
# push github
bash /root/QIANGGUO/QIANGGUO/linux_crontab/scripts/QGNews_maintain.sh
crontab -e
: 편집0 */8 * * * cd /root/QIANGGUO/QIANGGUO/;bash linux_crontab/scripts/QGNews_maintain.sh`, 8 、16 、24 。
crontab -l
: 검사systemctl restart crond
:crond 퀘스트를 적용합니다.4.github 주소