【问题标题】:Tweepy only returning 1 tweetTweepy 只返回 1 条推文
【发布时间】:2018-10-20 18:29:36
【问题描述】:

我有一个 python 脚本打算从 twitter 上抓取推文并将它们附加到一个 csv 文件中。我正在使用 tweepy 模块,但它只返回 1 条推文。这是我的 for 循环的问题,还是调用 twitter API 的问题?

for status in tweepy.Cursor(twitterapi.search,q="labour party",since="2018-05-01", until="2018-05-10").items(200):
    if 'RT' not in status.text:
      with open('C:/Users/User/Desktop/twittersentiment.csv', 'wb') as f:
               w = csv.writer(f)  
               favourites = status.user.favourites_count
               location = status.user.location.encode('utf8')
               tweet_text = ' '.join(re.sub("(@[A-Za-z0-9]+)|([^0-9A-Za-z \t])|(\w+:\/\/\S+)"," ",status.text.encode('utf8')).split())

               date = status.created_at.strftime('%m/%d/%Y')
               a = [location]
               b=[favourites]
               c=[tweet_text]
               d=[date]
               zip(a,b,c,d)
               w.writerow(zip(a,b,c,d))

【问题讨论】:

    标签: python twitter tweepy


    【解决方案1】:

    您应该在开始迭代 tweepy.Cursor 之前打开文件,否则每次迭代光标都会创建一个包含一个条目的新文件,覆盖之前的文件。

    with open('C:/Users/User/Desktop/twittersentiment.csv', 'wb') as f:
        w = csv.writer(f)  
        for status in tweepy.Cursor(twitterapi.search,q="labour party",since="2018-05-01", until="2018-05-10").items(200):
            if 'RT' not in status.text:
                favourites = status.user.favourites_count
                location = status.user.location.encode('utf8')
                tweet_text = ' '.join(re.sub("(@[A-Za-z0-9]+)|([^0-9A-Za-z \t])|(\w+:\/\/\S+)"," ",status.text.encode('utf8')).split())
    
                date = status.created_at.strftime('%m/%d/%Y')
                a = [location]
                b=[favourites]
                c=[tweet_text]
                d=[date]
                zip(a,b,c,d)
                w.writerow(zip(a,b,c,d))
    

    【讨论】:

    • 就知道会是这样的傻事-谢谢!
    猜你喜欢
    • 1970-01-01
    • 2016-09-20
    • 2020-09-24
    • 1970-01-01
    • 2019-06-21
    • 2011-12-04
    • 2014-10-24
    • 2020-12-03
    • 2012-04-22
    相关资源
    最近更新 更多