質問するログイン新規登録

回答編集履歴

1

サンプルコード追加

2019/06/06 11:28

投稿

amahara_waya
amahara_waya

スコア1029

answer CHANGED
@@ -1,3 +1,37 @@
1
+ -追記-
2
+
3
+ 参考リンク先に載っていたコードを改めてこちらに載せておきます。
4
+ インデントミスのないよう気をつけてください。
5
+
6
+ ```ここに言語を入力
7
+ import tweepy
8
+
9
+ def api(): #関数apiを生成します。https://apps.twitter.com にて consumerkey等を取得して各自で代入して下さい
10
+ consumer_key = 'consumer_key'
11
+ consumer_secret = 'consumer_secret'
12
+ access_key = 'access_key'
13
+ access_secret = 'access_secret'
14
+ auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
15
+ auth.set_access_token(access_key, access_secret)
16
+ api = tweepy.API(auth)
17
+ return api
18
+
19
+ dic = {} #辞書を定義しておきます。
20
+
21
+ for tweet in api().search('仮想通貨'): #エゴサ用の単語を入れます。
22
+ if tweet.retweeted == False: #リツイート”していない”ツイートだけを抽出。
23
+ text = tweet.text #ツイートのテキスト部分を変数textに代入。
24
+ id = tweet.id #ツイートの識別番号を変数idに代入
25
+ dic.update({id:text}) #変数textと変数idの紐付けをし、辞書dicに追加。
26
+ if '@' in dic[id]: #辞書dicにキーである変数idを代入し、テキスト本文を出力。@を含むツイート(リプライ)を除外。
27
+ pass
28
+ else:
29
+ api().retweet(id) #リツイートする
30
+ #api().create_favorite(id) どうせリツイートするならふぁぼっちゃえばいいじゃないですか。
31
+ ```
32
+
33
+ -追記終わり-
34
+
1
35
  dicを定義していないのが原因です。for文の前に空辞書dicを定義させれば実行できると思います。
2
36
 
3
37
  ```ここに言語を入力