#!/bin/bash # 看一看+小程序 朋友圈榜单 # sh ./main/main.sh ./kanyikan/kanyikan_main/run_kanyikan_moment.py --log_type="moment" --crawler="kanyikan" --strategy="kanyikan_moment" --our_uid="kanyikan_moment" --oss_endpoint="out" --env="dev" ./kanyikan/nohup.log local # youtube 定向策略 # sh ./main/main.sh ./youtube/youtube_main/run_youtube_follow.py --log_type="follow" --crawler="youtube" --strategy="定向爬虫策略" --oss_endpoint="out" --env="dev" --machine="local" youtube/nohup.log # ps aux | grep run_youtube | grep Python | grep -v grep | awk '{print $2}' | xargs kill -9 crawler_dir=$1 # 爬虫Python脚本执行入口路径 log_type=$2 # 日志 crawler=$3 # 哪款爬虫 strategy=$4 # 爬虫策略 oss_endpoint=$5 # OSS 网关,脚本部署在阿里云服务器时填写 inner,其它填写 out env=$6 # 爬虫上传环境。正式环境填写 prod,测试环境填写 dev machine=$7 # 部署机器,阿里云填写 aliyun,线下分别填写 macpro,macair,local nohup_dir=$8 # nohup 日志路径 echo "开始" if [ ${machine} = "macpro" ];then piaoquan_crawler_dir=/Users/lieyunye/Desktop/piaoquan_crawler/ profile_path=.bash_profile node_path=/usr/local/bin/node elif [ ${machine} = "macair" ];then piaoquan_crawler_dir=/Users/piaoquan/Desktop/piaoquan_crawler/ profile_path=./base_profile node_path=/usr/local/bin/node elif [ ${machine} = "aliyun" ];then piaoquan_crawler_dir=/data5/wangkun/piaoquan_crawler/ profile_path=/etc/profile elif [ ${machine} = "local" ];then piaoquan_crawler_dir=/Users/wangkun/Desktop/crawler/piaoquan_crawler/ profile_path=/etc/profile node_path=/opt/homebrew/bin/node else piaoquan_crawler_dir=/Users/wangkun/Desktop/crawler/piaoquan_crawler/ profile_path=/etc/profile node_path=/opt/homebrew/bin/node fi echo "$(date "+%Y-%m-%d %H:%M:%S") 更新环境变量..." cd ~ && source ${profile_path} echo "$(date "+%Y-%m-%d %H:%M:%S") 更新环境变量完成!" echo "$(date "+%Y-%m-%d %H:%M:%S") 正在杀进程..." grep_str=run_${crawler##*=} ps aux | grep ${grep_str} | grep Python | grep -v grep | awk '{print $2}' | xargs kill -9 echo "$(date "+%Y-%m-%d %H:%M:%S") 进程已杀死!" echo "$(date "+%Y-%m-%d %H:%M:%S") 正在更新代码..." cd ${piaoquan_crawler_dir} && git pull origin master --force && rm -f ${piaoquan_crawler_dir}main/nohup.log && rm -f ${piaoquan_crawler_dir}${nohup_dir} #echo ${piaoquan_crawler_dir} echo "$(date "+%Y-%m-%d %H:%M:%S") 代码更新完成!" if [ ${machine} != "aliyun" ];then echo "$(date "+%Y-%m-%d %H:%M:%S") 正在重启Appium..." ps aux | grep Appium.app | grep -v grep | awk '{print $2}' | xargs kill -9 nohup ${node_path} /Applications/Appium.app/Contents/Resources/app/node_modules/appium/build/lib/main.js >>./nohup.log 2>&1 & echo "$(date "+%Y-%m-%d %H:%M:%S") 重启Appium完毕!" echo "$(date "+%Y-%m-%d %H:%M:%S") 正在重启adb..." adb kill-server adb start-server echo "$(date "+%Y-%m-%d %H:%M:%S") 重启adb完毕!" else echo "无需重启Appium及adb服务" fi echo "$(date "+%Y-%m-%d %H:%M:%S") 正在重启服务..." nohup python3 -u ${crawler_dir} ${log_type} ${crawler} ${strategy} ${oss_endpoint} ${env} ${machine} >>${nohup_dir} 2>&1 & echo "$(date "+%Y-%m-%d %H:%M:%S") 服务重启完毕!" exit 0