いきなりコードで申し訳ないです。
python
1# -*- coding: utf-8 -*- 2""" 3request_oauthlibを使いtwitterで「ホゲホゲホゲ」を検索し、その内容と固有idをすべて表示する 4""" 5 6from requests_oauthlib import OAuth1Session 7import json 8 9 10CK = 11CS = 12AT = 13AS = 14 15 16#検索用のurl 17url = "https://api.twitter.com/1.1/search/tweets.json" 18twitter = OAuth1Session(CK, CS, AT, AS) 19 20#最初のパラメーター 21params = {"q":"ホゲホゲホゲ", 22 "result_type":"recent", 23 "count":100, 24 "tweet_mode":"extended", 25 } 26 27req = twitter.get(url, params = params) 28 29while(req.status_code == 200): 30 getsearch = json.loads(req.text) 31 search = getsearch['statuses'] 32 33 #要素の表示 34 for i in range(len(search)): 35 print(search[i]['full_text'])#内容 36 print(search[i]['id'])#固有のid 37 print("****************************") 38 39 #パラメーター更新 40 params = {"q":"ホゲホゲホゲ", 41 "result_type":"recent", 42 "count":100, 43 "tweet_mode":"extended", 44 "max_id": search[-1]["id"]-1}#ここでout of index 45 46 47 #のこり制限回数を表示 48 limit_remaining = req.headers['x-rate-limit-remaining'] 49 limit_reset = req.headers['x-rate-limit-reset'] 50 print("残り{}回 更新まであと{}".format(limit_remaining, limit_reset)) 51 52 req = twitter.get(url, params = params) 53 54
このようなコードを書きました
すると結果は一件のみ表示され、その後は二度目三度目のパラメーターを作るところで、out of indexとなります。
一つしか「ホゲホゲホゲ」を含むツイートがないのかもしれないと思い本家twitterで検索したところ、いくつもの検索結果が出てきました。
2個め以降は少しツイート日時が1つめよりすこし古いです。
apiに制限もかかっていないし、180回を超えてリクエストもしていません。
いろいろ調べてみましたがやはりわかりませんでした。
twitter apiの仕様でしょうか?また、これを回避する方法があれば教えていただきたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。