scheduling_v3.sh 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #!/bin/bash
  2. ###############################################
  3. #
  4. # 通过 run_scheduling_task_v3.py 调起当前 shell
  5. # 根据 crawler 及 task 的传递值,启动各个爬虫任务
  6. #
  7. ###############################################
  8. crawler_dir=$1 # 爬虫执行路径,如: ./youtube/youtube_main/run_youtube_follow.py
  9. log_type=$2 # 日志命名格式,如: follow,则在 youtube/logs/目录下,生成 2023-02-08-follow.log
  10. crawler=$3 # 哪款爬虫,如: youtube / kanyikan / weixinzhishu
  11. task=$4 # 爬虫任务
  12. oss_endpoint=$5 # OSS网关,内网: inner / 外网: out / 香港: hk
  13. env=$6 # 爬虫运行环境,正式环境: prod / 测试环境: dev
  14. nohup_dir=$7 # nohup日志存储路径,如: ./youtube/nohup.log
  15. echo "$(date "+%Y-%m-%d %H:%M:%S") 开始调度爬虫任务"
  16. echo "crawler_dir:"${crawler_dir}
  17. echo "log_type:"${log_type}
  18. echo "crawler:"${crawler}
  19. echo "task:"${task}
  20. echo "oss_endpoint:"${oss_endpoint}
  21. echo "env:"${env}
  22. echo "nohup_dir:"${nohup_dir}
  23. if [ ${env} = "--env=hk" ];then
  24. piaoquan_crawler_dir=/root/piaoquan_crawler/
  25. profile_path=/etc/profile
  26. python=python3
  27. elif [ ${env} = "--env=prod" ];then
  28. piaoquan_crawler_dir=/data5/piaoquan_crawler/
  29. profile_path=/etc/profile
  30. python=python
  31. elif [ ${env} = "--env=dev" ];then
  32. piaoquan_crawler_dir=/Users/wangkun/Desktop/crawler/piaoquan_crawler/
  33. profile_path=/etc/profile
  34. node_path=/opt/homebrew/bin/node
  35. python=python3
  36. else
  37. echo ${env}
  38. fi
  39. echo "$(date "+%Y-%m-%d %H:%M:%S") 更新环境变量..."
  40. cd ~ && source ${profile_path}
  41. echo "$(date "+%Y-%m-%d %H:%M:%S") 更新环境变量完成!"
  42. if [ ${env} = "--env=hk" ];then
  43. echo "升级yt-dlp"
  44. pip3 install yt-dlp -U
  45. else
  46. echo "$(date "+%Y-%m-%d %H:%M:%S") 正在更新代码..."
  47. # cd ${piaoquan_crawler_dir} && git pull origin master --force && rm -f ${piaoquan_crawler_dir}main/nohup.log && rm -f ${piaoquan_crawler_dir}${nohup_dir}
  48. echo "$(date "+%Y-%m-%d %H:%M:%S") 代码更新完成!"
  49. fi
  50. echo "$(date "+%Y-%m-%d %H:%M:%S") 正在重启服务..."
  51. cd ${piaoquan_crawler_dir}
  52. nohup ${python} -u ${crawler_dir} ${log_type} ${crawler} ${task} ${oss_endpoint} ${env} >> ${nohup_dir} 2>&1 &
  53. echo "$(date "+%Y-%m-%d %H:%M:%S") 服务重启完毕!"
  54. exit 0