使用twitterscraper拉取推文时遇版本兼容错误求助
解决twitterscraper两个版本的报错问题
针对1.6.1版本的AttributeError错误
这个错误是因为请求Twitter页面时返回了空内容(None),大概率是Twitter反爬机制拦截了请求,或是该版本的页面解析逻辑已失效。可尝试以下修复方法:
- 添加User-Agent请求头:修改twitterscraper源码,在请求中加入模拟浏览器的User-Agent,比如
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 - 降低并发数:把
poolsize从20调整到5以内,减少请求频率避免被反爬识别 - 检查网络环境:确保能正常访问Twitter,必要时切换稳定的网络环境
针对0.2.7版本的unexpected keyword 'begindate'错误
旧版本的参数命名和新版本不一致,0.2.7版本中日期参数是带下划线的begin_date和end_date,而非begindate和enddate。修改代码如下:
list_of_tweets = query_tweets('ukraine', limit=10, begin_date=dt.date.today(), end_date=dt.date.today(), poolsize=20, lang='en')
另外,该旧版本同样可能遭遇反爬拦截,可参考上述添加User-Agent、降低并发数的方法优化。
额外建议
如果上述方案仍无法解决问题,建议改用官方Twitter API或维护更活跃的第三方库(如tweepy,需API密钥),避免依赖已停止维护的scraper工具。
内容的提问来源于stack exchange,提问作者user15316630
相关产品推荐
相关产品推荐

