Я знаю длинный титул - я не мог думать ни о чем другом;)
Итак, я пишу скрипт на python, который сохранит элементы API поиска в Twitter в файл csv
writer = csv.writer(open('stocks.csv', 'a', buffering=0))
writer.writerows([(screen_name, hashtags, expanded_url , coordinates , geo , in_reply_to_user_id, followers)])
Но я хочу добавить, сколько подписчиков в Твиттере есть у пользователя!
Теперь это делается через GET users / lookup API API, который ограничен 350 запросами в час, но позволяет одновременно просматривать до 100 пользователей
прямо сейчас мой скрипт при поиске твита ищет подписчиков пользователей и вставляет в него все данные твита в файл csv.
Это прекрасно работает, но после 350 поисков я достиг своего предела !!!!
Теперь мой вопрос:
Могу ли я выполнить поиск по сценарию 100 раз и сохранить где-то сотни имен пользователей, и как только он достигнет 100, он вызывает GET users / lookup и вставляет информацию о праве на информацию о поиске в файл excel:
Пример Excel:
[info from search ...(in many columns)] [followers of the user who sent the tweet]
[info from search ...(in many columns)] [followers of the user who sent the tweet]
[info from search ...(in many columns)] [followers of the user who sent the tweet]
По запросу:
import urllib2
import urllib
import json
import time
s = u'@apple OR @iphone OR @aapl OR @imac OR @ipad OR @mac OR @macbook OR macbook OR mac OR ipad OR iphone 4s OR iphone 5 OR @iphone4s OR @ iphone 5 OR aapl OR iphone'
info = urllib2.quote(s.encode("utf8"))
page = "?q="
openurl = urllib.urlopen("http://search.twitter.com/search.json"+ page + info)
quota = 150
user = 'twitter'
user_info = urllib.urlopen("https://api.twitter.com/1/users/lookup.json?screen_name="+user)
while quota > 10:
openurl2 = urllib.urlopen("https://api.twitter.com/1/account/rate_limit_status.json")
twitter_quota = openurl2.read()
quota_json = json.loads(twitter_quota)
quota = quota_json['remaining_hits']
twitter_search = openurl.read()
table_search = json.loads(twitter_search)
print table_search
print str(table_search[u'results'][1][u'iso_language_code'])
lines = 0
linesmax = len(table_search[u'results'])
print linesmax
while lines < linesmax:
table_timeline_inner = table_search[u'results'][lines]
next = table_search[u'next_page']
lang = table_timeline_inner[u'iso_language_code']
to = table_timeline_inner[u'to_user_name']
text = table_timeline_inner[u'text']
user = table_timeline_inner[u'from_user']
geo = table_timeline_inner[u'geo']
time = table_timeline_inner[u'created_at']
result_type = table_timeline_inner[u'metadata'][u'result_type']
id = table_timeline_inner[u'id']