如何实现instagrapi登录时邮箱验证码流程的自动化?
解决Instagrapi登录验证码自动化问题
核心方案
Instagrapi支持通过回调函数处理验证码验证,同时保存登录会话能避免重复触发验证流程,这两个点结合就能实现自动化登录。
具体实现步骤
1. 编写验证码自动获取函数
你需要实现一个函数来自动读取邮箱里的Instagram验证码。以下是基于IMAP协议的示例框架,你可以根据自己的邮箱服务商调整细节:
def get_verification_code(username): # 连接邮箱服务器(以QQ邮箱为例,其他邮箱替换对应的IMAP地址) import imaplib import email import re from email.header import decode_header mail = imaplib.IMAP4_SSL("imap.qq.com") # 这里填你的邮箱账号和授权码(不是登录密码,部分邮箱需要单独生成) mail.login("your_email@qq.com", "your_email_auth_code") mail.select("inbox") # 搜索来自Instagram安全邮箱的最新邮件 result, data = mail.search(None, '(FROM "security@mail.instagram.com")') latest_email_id = data[0].split()[-1] result, data = mail.fetch(latest_email_id, "(RFC822)") raw_email = data[0][1].decode("utf-8") # 从邮件内容里提取6位数字验证码 code_match = re.search(r'\b\d{6}\b', raw_email) if code_match: return code_match.group() return None
2. 登录时绑定验证码回调
修改你的登录代码,把上面的函数传给verification_code_callback参数,同时保存会话文件:
from instagrapi import Client def get_verification_code(username): # 这里是上面写的验证码获取逻辑 # ...(省略具体实现) ACCOUNT_USERNAME = "你的账号" ACCOUNT_PASSWORD = "你的密码" cl = Client() # 登录时自动调用验证码函数 cl.login(ACCOUNT_USERNAME, ACCOUNT_PASSWORD, verification_code_callback=get_verification_code) # 保存会话到本地文件,下次登录直接复用 cl.dump_settings("ig_session.json") user_id = cl.user_id_from_username("adw0rd") medias = cl.user_medias(user_id, 20)
3. 后续登录加载会话跳过验证
之后运行代码时,优先加载已保存的会话,只有会话失效时才重新触发验证码流程:
from instagrapi import Client def get_verification_code(username): # 验证码获取逻辑 # ...(省略具体实现) ACCOUNT_USERNAME = "你的账号" ACCOUNT_PASSWORD = "你的密码" cl = Client() try: # 尝试加载本地会话 cl.load_settings("ig_session.json") cl.login(ACCOUNT_USERNAME, ACCOUNT_PASSWORD) except Exception: # 会话失效时重新登录并保存新会话 cl.login(ACCOUNT_USERNAME, ACCOUNT_PASSWORD, verification_code_callback=get_verification_code) cl.dump_settings("ig_session.json") user_id = cl.user_id_from_username("adw0rd") medias = cl.user_medias(user_id, 20)
注意事项
- 不同邮箱的IMAP配置和授权方式不同,比如Gmail需要开启IMAP并使用应用专用密码
- 频繁自动化操作可能触发Instagram风控,建议控制请求频率,避免账号被限制
- 会话文件包含敏感登录信息,务必妥善保管,不要随意分享
内容的提问来源于stack exchange,提问作者Luana Nunes
相关产品推荐
相关产品推荐

