如何解决使用 Tweepy 通过 twitter 提取推文
在成功将推文附加到我的 csv 文件后,我看到推文被缩短,并且在它们被缩短的地方有一个新的文本。
例如:原始推文看起来像这样
风险管理职业 该领域的一些课程和资格是:
- GARP 的金融风险管理 (FRM) 认证
- IRM 的企业风险管理 (ERM) 资格
- MBA/风险管理硕士
我的推文有这样的正文: 风险管理职业\n\n该领域的一些计划和资格是:\n\n1. GARP\xe2\x80\x99s 金融风险 Ma\xe2\x80\xa6(在此处添加链接)。
知道如何解决这个问题吗?
在这里分享我的代码:
auth = tweepy.OAuthHandler('xxxx','xxxx')
auth.set_access_token('xxxx','xxxx')
api = tweepy.API(auth)
search_words = "jobs" #enter your words
new_search = search_words + " -filter:retweets"
csvFile = open('jobs.csv','a')
csvWriter = csv.writer(csvFile)
for tweet in tweepy.Cursor(api.search,q=new_search,count=100,lang="en",since_id=0).items():
csvWriter.writerow([tweet.created_at,tweet.text.encode('utf8'),tweet.user.screen_name.encode('utf-8'),tweet.favorite_count,tweet.retweet_count,tweet.truncated,tweet.user.location.encode('utf-8'),tweet.source])
解决方法
所以这里发生的事情是你也在捕捉特殊字符,\n 是一个常见的字符,只是一个换行符,我首先想到的方法是使用 .split() 函数,但这会拆分字符串到一个数组中,虽然它确实删除了字符,然后我找到了 .replace() 函数,它看起来像这样以摆脱换行符:
tweetToCut.replace('\n','')
这将消除换行符,尽管您必须对每个字符都这样做,但您可以将它们链接起来,使其看起来像:
tweetToCut.replace('\n','').replace('\xe2','')
尽管除非您只想要推文的文本,否则推文的格式需要您要删除的字符,因此如果您打算只使用文本,则最好将其删除,但是如果您确实需要我建议您保留这些字符的格式,除非您想重新格式化推文。
,看起来您正在使用标准推文,而不是处理扩展(超过 140 条)推文:
for tweet in tweepy.Cursor(api.search,q=new_search,count=100,lang="en",tweet_mode=“extended”,since_id=0).items():
您还需要在 CSV 存储行中使用 tweet.full_text
而不是 tweet.text
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。