【问题标题】:Extracting tweets through twitter using Tweepy使用 Tweepy 通过 twitter 提取推文
【发布时间】:2021-04-30 11:52:29
【问题描述】:

成功地将推文附加到我的 csv 文件后,我看到推文被缩短了,并且在缩短的地方有一个新文本。

例如:原始推文看起来像这样

风险管理职业 该领域的一些计划和资格是:

  1. GARP 的金融风险管理 (FRM) 认证
  2. IRM 的企业风险管理 (ERM) 资格
  3. 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])

【问题讨论】:

    标签: python pandas twitter tweepy


    【解决方案1】:

    所以这里发生的事情是你也捕捉到了特殊字符,\n 是一个常见的字符,只是一个换行符,我首先想到的方式是使用 .split() 函数,但这会拆分字符串到一个数组中,虽然它确实删除了字符,然后我找到了看起来像这样的 .replace() 函数来摆脱换行符:

    tweetToCut.replace('\n', '')
    

    这将消除换行符,尽管您必须对每个字符都执行此操作,但您可以将它们链接起来,使其看起来像:

    tweetToCut.replace('\n', '').replace('\xe2', '')
    

    虽然除非你只是想要推文的文本,否则你想要删除的字符是推文格式所必需的,所以如果你打算只使用文本,你最好删除它们,但如果你确实想要我建议你保留这些字符的格式,除非你想重新格式化推文。

    【讨论】:

      【解决方案2】:

      看起来你正在使用标准推文,而不是处理扩展(超过 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。

      【讨论】:

      • 是的,正确的。我在起飞前做了同样的事情,准备更新我的评论。不过还是谢谢。
      猜你喜欢
      • 1970-01-01
      • 2019-08-30
      • 2020-09-04
      • 2017-08-20
      • 1970-01-01
      • 2012-08-06
      • 1970-01-01
      • 2016-05-18
      • 2013-09-05
      相关资源
      最近更新 更多