>  기사  >  백엔드 개발  >  Python 예약 작업, 자동화를 달성하는 방법

Python 예약 작업, 자동화를 달성하는 방법

coldplay.xixi
coldplay.xixi앞으로
2020-11-16 17:12:062542검색

python tutorial 칼럼에서는 자동화를 달성하는 방법을 소개합니다.

Python 예약 작업, 자동화를 달성하는 방법

1. cron 설치

기본적으로 모든 Linux 배포판에는 기본적으로 cron 도구가 사전 설치되어 있습니다.

크론이 미리 설치되어 있지 않더라도 몇 가지 간단한 명령을 실행하면 매우 간단하게 설치할 수 있습니다

# 检查是否已经预装了cron
service cron status复制代码

서비스 설치 및 시작

安装:apt-get install cron
启动/停止/重启:service cron start/stop/restart
查询当前任务:crontab -l复制代码

2 설치 후 확인. 완료, 설치 성공 여부 확인, 동일 상태 명령을 사용하여 확인

다음 프롬프트는 설치가 성공했음을 나타냅니다.

Python 예약 작업, 자동화를 달성하는 방법또한 우분투에서 이러한 프롬프트가 나타날 수 있습니다.

Python 예약 작업, 자동화를 달성하는 방법 이는 정상적으로 사용할 수 있다는 의미이기도 합니다

3. Cron 사용법

예. cron의 몇 가지 간단한 사용법을 배울 수 있으며, 나중에 사례를 통해 자세히 소개하겠습니다. 먼저

cron을 나열합니다. 현재 사용자가 계획한 작업:

crontab -l复制代码

다른 사용자의 cron 작업 보기:

crontab –l –u username复制代码
Move 이미 예약된 cron 작업에 추가:

crontab –r复制代码

4 crontab 계획 예약

먼저 작업을 추가하거나 업데이트합니다. crontab에서 다음 명령을 통해

처음 입력할 때 편집기를 선택하라는 메시지가 표시됩니다. 이는 사용자의 습관 선택에 따라 결정됩니다.

Python 예약 작업, 자동화를 달성하는 방법선택 후 다음과 같은 인터페이스로 들어갑니다:

vim을 사용한 학생들은 이 인터페이스에 익숙할 것입니다. 유사한 작업:

편집을 시작하려면 A를 누르고, 저장하고 종료하려면 ESC를 누르세요Python 예약 작업, 자동화를 달성하는 방법

아래 단락에 초점이 있습니다:

m h dom mon dow commmand复制代码

이것은 실제로 예약된 작업을 설정하는 데 사용할 수 있는 crontab 예약 작업 사용에 대한 소개입니다.

구체적인 구문은 다음과 같습니다.

m h dom mon dow command
* * * * * command
- - - - - -
| | | | | |
| | | | | --- 预执行的命令
| | | | ----- 表示星期0~7(其中星期天可以用0或7表示)
| | | ------- 表示月份1~12
| | --------- 表示日期1~31
| ----------- 表示小时1~23(0表示0点)
------------- 表示分钟1~59 每分钟用*或者 */1表示复制代码
몇 가지 간단한 적용 사례를 인용합니다.

매일 02시에 작업을 실행합니다.

0 2 * * * command复制代码
  • 매일 5시와 17시에 작업을 실행합니다
0 5,17 * * * command复制代码
  • 10분마다 작업 실행
*/10 * * * * command复制代码
  • 특정 달의 일요일 17:00에 작업 실행
0 17 * jan,may,aug sun command复制代码
    가장 일반적으로 사용되는 사례는 다음 링크를 참조하세요. http :/ /linux.51yip.com/search/crontab
  • 위의 경우 명령은 단락 인쇄(
echo "Hello xiaoyi" >> /tmp/test.txt 
复制代码

) 또는 이 단락을 txt(

echo "Hello xiaoyi" >> /tmp/test.txt 
复制代码

)로 출력하는 등 수행해야 하는 특정 작업을 나타냅니다. Python 스크립트 실행:

python demo.py filepath复制代码

뒤에 있는 파일 경로는 입력 매개변수 args를 나타냅니다. 예를 들어 다음과 같은 경우 파일 다운로드 경로를 입력해야 합니다.

5. 실전 전투

위 내용을 모두 이해하셨으니 이제 오늘의 하이라이트를 시작해 보세요.

먼저 매일 FTP 서버에서 최신 작업 데이터를 다운로드하고, 로컬에 데이터를 다운로드한 후 Python을 통해 데이터 요약 통계를 수행하고, 마지막으로 문제가 있으면 결과를 데이터베이스에 저장해야 합니다. 해당 기간 동안 일부 링크에서는 알람 이메일이 전송됩니다.

① Python 스크립트먼저 다음 기능을 완료하려면 Python 스크립트가 필요합니다.

데이터베이스에서 최신 데이터 날짜 가져오기

ftp에서 로컬로 최신 데이터 다운로드
  • 에 대한 요약 통계 생성 최신 로컬 데이터
  • 통계 결과 저장 데이터베이스 항목 요약
  • 이메일 알림
  • 위 프로세스의 대략적인 의사 코드는 다음과 같습니다.
  • if __name__ == '__main__':    """获取最新数据日期"""
        latest_date = get_max_date()    # 以最新日期为名创建文件夹
        download_dir = os.path.join(sys.argv[1], latest_date)    if not os.path.exists(download_dir):
            os.makedirs(download_dir)        
        """从ftp中下载最新数据"""
        download_file(latest_date, download_dir)    """处理最新数据并保存"""
        process_data(latest_date, download_dir)复制代码
이메일 모니터링에서는 Try catch 예외 캡처를 추가할 수 있으며, 예외가 발생하면 , 이메일이 전송됩니다

Python 편집기 이전에 이메일 내용을 작성하여 보냈습니다. 다음을 참고하세요. Python 이메일 보내기②크론 작업 작성

crontab을 열고 다음 내용을 마지막 줄까지 편집합니다. 저장하고 종료

crontab은 작업 목록을 실시간으로 자동 업데이트합니다. 걱정된다면 재시작 명령을 통해 cron 서비스를 다시 시작할 수도 있습니다. [글 시작 부분 참조]

여기에 작은 내용이 있습니다. 제안, 모든 경로에 대해 절대 경로를 입력하세요

Python 예약 작업, 자동화를 달성하는 방법3 효과 모니터링

Python 코드에 문제가 없으면 작업 구현이 예약됩니다.

콘솔에서만 직접 명령어를 실행한 후, 문제가 없을 때 cron 작업 목록에 작성하는 것이 좋습니다.

Xiaoyi의 예약된 작업 작업의 최종 스크린샷은 다음과 같습니다.

하단은 ftp 파일 다운로드, 상단은 데이터 요약 통계

Python 예약 작업, 자동화를 달성하는 방법

관련 무료 학습 권장 사항: python 튜토리얼 (동영상)

위 내용은 Python 예약 작업, 자동화를 달성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 juejin.im에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제