【问题标题】:Get data from Twitter using Tweepy and store in csv file使用 Tweepy 从 Twitter 获取数据并存储在 csv 文件中
【发布时间】:2020-04-20 11:57:41
【问题描述】:

我是 Python、Twitter 和 Tweepy 的新手。我设法从 Twitter 中提取数据,但我现在想将其存储到 CSV 文件中。

我的代码是:

#!/usr/bin/python

import tweepy

auth = tweepy.auth.OAuthHandler('XXXXXX', 'XXXXXXX'
auth.set_access_token('XXX-XXX', 'XXX'

api = tweepy.API(auth)
for tweet in tweepy.Cursor(api.search,
                           q="google",
                           since="2014-02-14",
                           until="2014-02-15",
                           lang="en").items():
    print tweet.created_at, tweet.text

这会在 CLI 上打印数据,但我希望它输出到 CSV 文件。我尝试了几个不同的选项,但它只输出了第一条推文,而不是所有推文。

【问题讨论】:

    标签: python python-2.7 csv twitter tweepy


    【解决方案1】:

    这样就可以了!

    我会推荐你​​使用 Python 中的csv。在你的循环中打开一个文件并写入它,如下所示:

    #!/usr/bin/python
    import tweepy
    import csv #Import csv
    auth = tweepy.auth.OAuthHandler('XXXXXX', 'XXXXXXX')
    auth.set_access_token('XXX-XXX', 'XXX')
    
    api = tweepy.API(auth)
    
    # Open/create a file to append data to
    csvFile = open('result.csv', 'a')
    
    #Use csv writer
    csvWriter = csv.writer(csvFile)
    
    for tweet in tweepy.Cursor(api.search,
                               q = "google",
                               since = "2014-02-14",
                               until = "2014-02-15",
                               lang = "en").items():
    
        # Write a row to the CSV file. I use encode UTF-8
        csvWriter.writerow([tweet.created_at, tweet.text.encode('utf-8')])
        print tweet.created_at, tweet.text
    csvFile.close()
    

    【讨论】:

    • 非常感谢,这正是我想要的!输出格式不是很好我想要日期/时间,每行的推文是可能的吗?
    • 太棒了!在 csv 中,您首先拥有日期和时间(Y-m-d H:M:S),然后是推文。你想要另一种格式的日期/时间吗?
    • 抱歉,日期/时间的格式不完美。当它输出到 CSV 时,它不是由制表符或其他东西分隔的,而且非常混乱,理想情况下我希望格式为:Column1,Column2 date/time,tweet
    • 好的,你可以给 csv writer 传递一个带制表符的分隔符,如下所示:delimiter=' '。将此行: csvWriter = csv.writer(csvFile) 更改为: csvWriter = csv.writer(csvFile, delimiter=' ')
    • 我的 csv 是空的。
    【解决方案2】:

    您实际上可以运行该程序并将输出打印到另一个文件上。 转到 CMD 并键入
    python file.py > newFile.py
    file.py 的输出将被读取到 newFile.py

    【讨论】:

      猜你喜欢
      • 2017-11-05
      • 2018-05-17
      • 1970-01-01
      • 1970-01-01
      • 2018-09-01
      • 2017-09-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多