Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python의 POP3 프로토콜 클라이언트

<시간/>

Python 표준 라이브러리의 poolib 모듈은 POP3 및 POP3_SSL 클래스를 정의합니다. POP3 클래스는 POP3 서버에 대한 연결을 캡슐화하고 RFC 1939에 정의된 대로 프로토콜을 구현합니다. POP3_SSL 클래스는 SSL을 기본 프로토콜 레이어로 사용하는 POP3 서버를 지원합니다.

POP3 프로토콜은 POP3 서버의 구현 품질이 상당히 낮기 때문에 구식입니다. 메일 서버가 IMAP을 지원하는 경우 imaplib.IMAP4 클래스를 사용하는 것이 좋습니다.

두 클래스 모두 다음과 같은 메서드가 정의되어 있습니다. -

환영()

POP3 서버에서 보낸 인사말 문자열을 반환합니다.

사용자(사용자 이름)

사용자 명령을 보내면 암호가 필요하다는 응답이 표시되어야 합니다.

pass_(비밀번호)

비밀번호를 보내세요.

Stat()

사서함 상태를 가져옵니다. 결과는 2개의 정수를 포함합니다:(메시지 수, 편지함 크기).

목록()

요청 메시지 목록, 결과는 (response, ['mesg_num octets', ...], octets) 형식입니다.

retr()

지정된 인덱스의 메시지를 검색하고 본 플래그를 설정합니다.

삭제()

삭제할 메시지 번호에 플래그를 지정합니다.

상단()

메시지 헤더와 메시지 헤더 뒤의 메시지 줄 수를 검색합니다.

quit():사인오프

변경 사항을 커밋하고, 사서함을 잠금 해제하고, 연결을 끊습니다.

예시

다음 코드는 Gmail의 POP 서버에서 읽지 않은 모든 메시지를 검색합니다.

import poplib
box = poplib.POP3_SSL('pop.googlemail.com', '995')
box.user("YourGmailUserName")
box.pass_('YourPassword')
N = len(box.list()[1])
for i in range(N):
   for msg in box.retr(i+1)[1]:
      print (msg)
box.quit()

위의 스크립트를 실행하기 전에 Gmail 계정이 덜 안전한 앱을 허용하도록 구성되어 있는지 확인하십시오.