2016-04-14 27 views
0

Belirli bir kullanıcı tarafından tweetlenen belirli anahtar kelimeleri içeren tweet'leri aramak için twitter'ın API v1.1 ve urllib2 kitaplığını kullanmaya çalışıyorum. Denedim kodudur:Twitter api v1.1 kullanarak twitter tanıtıcısı ve anahtar sözcüklerle arama v1.1

#!/usr/bin/python 

import json 
import sys 
import urllib2 
import os 



#input twitter handle 
handle = sys.argv[1] 

sturl="https://api.twitter.com/1.1/search/tweets.json?q=immigrant%20OR%20illegal%20from%3A"+handle+"&src=typd"; 

url = urllib2.urlopen(sturl) 

#convert the data and load it into json 
data = json.load(url) 

print len(data), "tweets" 

Bu kelime "göçmen" ya da "kaçak" ihtiva eden bu hesaba tweets için giriş ve aramaları gibi arzu edilen kullanım kolu alır ve bu tür tweets numarasını koyar. Benim aldığım hata:

File "tweet_search.py", line 16, in <module> 
    url = urllib2.urlopen(sturl) 
    File "/Users/David/anaconda/lib/python2.7/urllib2.py", line 154, in urlopen 
    return opener.open(url, data, timeout) 
    File "/Users/David/anaconda/lib/python2.7/urllib2.py", line 437, in open 
    response = meth(req, response) 
    File "/Users/David/anaconda/lib/python2.7/urllib2.py", line 550, in http_response 
    'http', request, response, code, msg, hdrs) 
    File "/Users/David/anaconda/lib/python2.7/urllib2.py", line 475, in error 
    return self._call_chain(*args) 
    File "/Users/David/anaconda/lib/python2.7/urllib2.py", line 409, in _call_chain 
    result = func(*args) 
    File "/Users/David/anaconda/lib/python2.7/urllib2.py", line 558, in http_error_default 
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp) 
urllib2.HTTPError: HTTP Error 400: Bad Request 

Sorgu formatını yanlış kullanıyorum mu? API belgelerine göz atmayı denedim ve twitter tutamacının yanı sıra anahtar kelime ile arama yapmak için bir sorgu seçeneği bulamıyorum.

cevap

0

Eh ben URL ziyaret

Sapınızın futbol olduğunda url'si olacaktır budur
https://api.twitter.com/1.1/search/tweets.json?q=immigrant%20OR%20illegal%20from%3Asoccer&src=typd 

berbat olduğunu düşünüyorum. Bu

{"errors":[{"code":215,"message":"Bad Authentication data."}]} 

Sen URL olmalıdır tam olarak nasıl bakmak gerekir almalısınız. Kesinlikle API tuşlarını veya diğer bazı şeyleri kullanmalısınız.

+0

Açıkça. Ancak, anahtar kelime için basit bir sorguyla çalışmam bile mümkün değil: https://api.twitter.com/1.1/search/tweets.json?q=immigrant – gdavtor

+0

İyi API'lar API'ya ihtiyaç duyar Anahtarlar ve şeyler, belgelere ve örnek bir sorguya bakmalı ve bundan inşa etmelisiniz. – PYA

+0

twitter'a kaydolmanız, kullanmak için API Anahtarları almanız gerekiyor. API anahtarlarınıza erişmek için uygulamanızı https://apps.twitter.com/ adresinden kaydettirin ve ardından sorguyu nasıl oluşturacağınızı anlamak için dokümanlara bakabilirsiniz. – PYA