使用Tweepy实现Twitter自动化无私信请求相关文档的解决办法问询
Tweepy 实现私信请求功能的处理方案
- 首先确认Tweepy版本:只有4.0及以上版本的Tweepy适配Twitter v2 API,才支持私信请求相关功能。你可以执行
pip show tweepy查看当前安装的版本,版本过低时运行pip install --upgrade tweepy完成升级。 - 直接调用原生接口获取私信请求:Tweepy没有做单独的私信请求快捷封装,你可以通过
Client.get_dm_events()方法过滤数据,传入event_types='MessageCreate'、dm_event_filter='from_non_followers'两个参数,即可拿到所有非关注用户发来的待处理私信请求。 - 处理私信请求的示例代码如下:
import tweepy # 初始化客户端,需提前在开发者后台申请dm.read、dm.write权限 client = tweepy.Client( bearer_token="你的平台生成Bearer Token", consumer_key="你的API Key", consumer_secret="你的API Secret", access_token="你的访问令牌", access_token_secret="你的访问令牌密钥" ) # 拉取最多50条待处理私信请求 dm_requests = client.get_dm_events( event_types="MessageCreate", dm_event_filter="from_non_followers", max_results=50 ) # 遍历输出私信请求信息 for event in dm_requests.data: print(f"发送用户ID:{event.sender_id},消息内容:{event.text}")
- 如果需要实现私信请求的同意、拒绝等操作,可以直接参考Twitter官方API文档的对应端点,通过Tweepy Client的原生请求方法调用对应接口即可,也可以自行查阅Tweepy源码中
client.py内的私信相关封装逻辑,扩展自定义方法。
内容的提问来源于stack exchange,提问作者user48118
相关产品推荐
相关产品推荐

