如何在Python中使用新的Twitter API 1.1搜索?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何在Python中使用新的Twitter API 1.1搜索?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2085字,纯文字阅读大概需要3分钟。
内容图文
![如何在Python中使用新的Twitter API 1.1搜索?](/upload/InfoBanner/zyjiaocheng/722/b2b1b1b323f54fc6a20676b8492a09c8.jpg)
众所周知,Twitter正在转向新的API(1.1),而旧的(1.0)正面临停电并最终终止.
我正在使用Python / Django开发一个小组项目,似乎没有一个大的Python Twitter库正在使用API?? 1.1.我可以直接与API接口而不使用Python接口,但由于需要使用OAuth登录,我遇到了问题.
所以我有两个问题.
>是否有支持Twitter API 1.1的Python库?
>如果我们直接与新API进行交互,如下面的URL所示,考虑到我们需要使用OAuth登录,我们如何才能使其工作?
网址:https://api.twitter.com/1.1/search/tweets.json?q = #freebandnames& ince_id = 24012619984051000& max_id = 250126199840518145& result_type = mixed& count = 4
解决方法:
Twitter模块有效.您可以使用它来要求Twitter进行身份验证,转到Twitter网站,输入用户名和密码,并在您的计算机上保存令牌.
我使用此代码搜索Twitter状态(实时搜索与标准Twitter搜索有点不同).
码:
# -*- coding: utf-8 -*-
import os
import twitter
import json
import csv
from twitter.oauth import write_token_file, read_token_file
from twitter.oauth_dance import oauth_dance
def login():
# Go to http://twitter.com/apps/new to create an app and get these items.
# See also http://dev.twitter.com/pages/oauth_single_token.
APP_NAME = 'xxx'
CONSUMER_KEY = 'xxx'
CONSUMER_SECRET = 'xxx'
TOKEN_FILE = '/token.txt'
try:
(oauth_token, oauth_token_secret) = read_token_file(TOKEN_FILE)
except IOError, e:
(oauth_token, oauth_token_secret) = oauth_dance(APP_NAME, CONSUMER_KEY,
CONSUMER_SECRET)
print e.errno
print e
if not os.path.isdir('out'):
os.mkdir('out')
write_token_file(TOKEN_FILE, oauth_token, oauth_token_secret)
auth=twitter.oauth.OAuth(oauth_token, oauth_token_secret,CONSUMER_KEY, CONSUMER_SECRET)
return twitter.TwitterStream(auth = auth, secure = True)
if __name__=="__main__":
t = login()
res = t.statuses.filter(track = "search text")
res_list = []
tweetfields = set()
for r in res:
if len(res_list)<100:
print len(res_list)
res_list.append(r)
tweetfields = tweetfields.union(r.keys())
else:
break
fname = '/results.csv'
f = open(fname,'w')
dw = csv.DictWriter(f,fieldnames=list(tweetfields))
dw.writeheader()
for r in res_list:
dw.writerow({k:v.encode('utf8') if isinstance(v,unicode) else v for k,v in r.items()})
f.close()
print [result['text'] for result in res_list]
内容总结
以上是互联网集市为您收集整理的如何在Python中使用新的Twitter API 1.1搜索?全部内容,希望文章能够帮你解决如何在Python中使用新的Twitter API 1.1搜索?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。