Product Details
Product Information
Outlook长效-OAuth2
Description
商品信息
* 类型:Outlook长效邮箱 + OAuth2令牌
* 存活时间:6-12个月
* 已开通 IMAP/POP3/SMTP
卡密格式
OAuth2令牌说明
* 可通过 Microsoft Graph API 收发邮件
* refresh_token 有效期约90天
* 无需密码即可调用API读取邮件
* 支持批量自动化取件验证码
Python API取件完整示例
import base64
import imaplib
import poplib
import requests
def get_access_token(client_id, refresh_token):
data = {
'client_id': client_id,
'grant_type': 'refresh_token',
'refresh_token': refresh_token
}
ret = requests.post('https://login.live.com/oauth20_token.srf', data=data)
# Print the response content and access token
print(ret.text)
print(ret.json()['access_token'])
return ret.json()['access_token']
# Generate OAuth2 authentication string using the access token
def generate_auth_string(user, token):
auth_string = f"user={user}\1auth=Bearer {token}\1\1"
return auth_string
pop3_server = 'outlook.office365.com'
pop3_port = 995 # POP3 over SSL
def connect_pop3(email, access_token):
server = poplib.POP3_SSL(pop3_server, pop3_port)
# Authenticate using OAuth2
auth_string = generate_auth_string(email, access_token)
encoded_auth_string = base64.b64encode(auth_string.encode("utf-8")).decode("utf-8")
server._shortcmd(f'AUTH XOAUTH2')
server._shortcmd(f'{encoded_auth_string}')
# Retrieve the list of emails
num_messages = len(server.list()[1])
print(f"There are {num_messages} emails in the inbox.")
# Retrieve email content
for i in range(num_messages):
response, lines, octets = server.retr(i + 1)
msg_content = b"\n".join(lines).decode("utf-8")
print(f"Email {i + 1}:")
print(msg_content)
print("=" * 50)
def connect_imap(email, access_token):
mail = imaplib.IMAP4_SSL('outlook.office365.com')
# Print the generated authentication string
print(generate_auth_string(email, access_token))
mail.authenticate('XOAUTH2', lambda x: generate_auth_string(email, access_token))
mail.select("INBOX")
status, messages = mail.search(None, 'ALL')
print("Email IDs:", messages)
mail.logout()
# Set the email address and refresh token
client_id = '8b4ba9dd-3ea5-4e5f-86f1-ddba2230dcf2'
email = "zhiyojw11@hotmail.com"
t = "M.C533_SN1.0.U.-Ckg1QEz0rbGx7l*Es*SCkLYZmiqP85SwPmVRug!krVn94lTj6earlSUHUMezVlI0cefVLnrPTGS08fWZgBroJzg4Qmwy0Lg!qFg4fGpYrHByNI4DY416RHI2m6NkidqI3SNPu4omKO5NM4YlnjufFvyO2MdKRhvyE0Ufv!RuY8wRjJ!SJuKkCRBRa6UHKT9wpqovJ0k0JLze5VqClZp!Jmv16a4gAswwzqFFYrm9tLlHuxYevszm24kACW*WGzq*tL6weSHQEG*i1bCaSztSh6*7FLmj2t3cW7qloy94XgC9lCQPB0DnwxE3JRMS41wFXu42tioas1eJJYXlYIRxiX2hte9pTQ04dnLt5MUjNK2pw7KCF!cTqwoPH8omz6Zwoi74n5PwB1VjHVYWtj8h8O8$"
# Get the access token using the refresh token
acc_token = get_access_token(client_id, t)
# Connect to the IMAP server and access emails
connect_imap(email, acc_token)
购买须知
* 虚拟商品,自动发货
* 请在24小时内完成验收
* 验收通过后不支持退款
* 建议使用海外IP登录