質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Q&A

1回答

817閲覧

Tweepyで取得したデータをCSVに書き出したい

osaru3333dayo

総合スコア9

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

0グッド

0クリップ

投稿2018/11/20 10:37

Twitterの分析をする為に、
Pythonとtweepyを導入しました。

Webで拾ったプログラムを弄って、
特定のアカウントのツイート情報をprintで吐き出す方法はわかりましたが、
printで吐き出した内容をcsvに書き出す方法がわかりません。

csvライブラリを読み込むところまでは理解してます。

教えて抱けると幸いです。

当方はMacを使っています。

import tweepy import csv from datetime import timedelta consumer_key = "" consumer_secret = "" access_token = "" access_token_secret = "" auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_token, access_token_secret) api = tweepy.API(auth) def main(): Account=input('Account:@') num=0 pages=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17] for page in pages: tweets=api.user_timeline(Account, count=200, page=page) for tweet in tweets: tweet.created_at+=timedelta(hours=9) print('----------') print(tweet.created_at) print(tweet.text) print(tweet.favorite_count) print(tweet.retweet_count) num+=1 print(num, 'tweet_appear') if __name__=='__main__': main()

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

基本的な使い方についてはPythonでCSVの読み書きを参照ください。
大枠として以下のような流れでよいと思います。

Python

1# 略 2import csv 3f = open('out.csv','w') 4writer = csv.writer(f, lineterminator='\n') 5# 略 6for page in pages: 7 # 略 8 for tweet in tweets: 9 # 略 10 l = [tweet.created_at,tweet.text,tweet.favorite_count,tweet.retweet_count] 11 writer.writerow(l) # 1行書き込み 12 # 略 13 num+=1 14# 略 15f.close()

投稿2018/11/20 10:50

編集2018/11/20 10:51
can110

総合スコア38266

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

osaru3333dayo

2018/11/20 11:36

回答ありがとうございます。 頂いた回答とURLや他ページを見たのですが、よくわからないです。 printでの吐き出しは無くなっても良いのですが、 どう変えたら良いですか? import tweepy import csv from datetime import timedelta consumer_key = "" consumer_secret = "" access_token = "" access_token_secret = "" auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_token, access_token_secret) api = tweepy.API(auth) Account=input('Account:@') num=0 pages=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17] f = open('out.csv','w') writer = csv.writer(f, lineterminator='\n') for page in pages: for tweet in tweets: l = [tweet.created_at,tweet.text,tweet.favorite_count,tweet.retweet_count] writer.writerow(l) num+=1 f.close()
can110

2018/11/21 00:22

コメント欄ではコードのインデントがなくなるなど不都合があるので、質問本文に追記の形で反映させてください。 ぱっと見、提示コードでよいように思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問