Twitter Streaming API可用于使用以下查询检测短语:http: //stream.twitter.com/1/statuses/filter.json?track = words
但是,删除推文时似乎没有检测到相同的查询.有没有办法用API做到这一点?
提前致谢.
我打算在特定主题上录制实时推文.同样,我在PHP中使用带有cURL的twitter流API.
这是代码:
<?php
$username = "xxxxx";
$password = "xxxxx";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://stream.twitter.com/1/statuses/filter.json? track=SEARCH_PARAMETER');
curl_setopt($ch, CURLOPT_USERPWD, $username.":".$password);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$result = curl_exec($ch);
$jsonOBJ = json_decode ($result);
curl_close($ch);
print_r($jsonOBJ);
?>
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果我将CURLOPT_RETURNTRANSFER设置为0,我可以看到终端上的推文.但我无法存储变量$ jsonOBJ并打印它.
请帮忙!
我有一个python脚本,使用基本身份验证和使用tweetstream模块挂钩到Twitter Streaming API.
我每分钟收集10条推文.
我正在断断续续地断开连接,因此目前正在记录它们发生的频率.
我一直在达到我的速率限制并获得420个HTTP错误.
我知道,对于搜索API,您可以使用OAuth身份验证获得更高的配额.对于流媒体,我找不到任何关于基本和OAuth之间的速率限制差异的参考.无论如何,看起来我正在使用的python Tweetstream不支持使用流API.
我注意到Tweetstream的Ruby版本支持OAuth,但我正在做这个项目作为python的学习经验.
从阅读Twitter帮助,它谈到'退避战略'并提到:
如果收到HTTP 420响应,则必须停止几分钟的进一步连接尝试.
我不再收到错误,但一直试图在我的代码中制定更好的逻辑,以避免永久性地获得这些错误.
我目前的提议如下,在尝试重新连接之前现在等待200秒.
while True:
try:
with tweetstream.FilterStream(uname, passwd, locations=extent) as stream:
# do stuff
except tweetstream.ConnectionError as e:
print e.message + " time: " + datetime.now
time.sleep(200)
pass
except tweetstream.AuthenticationError as e:
now = datetime.datetime.now()
print e.message + " time: " + str(now)
pass
Run Code Online (Sandbox Code Playgroud)
我的问题是 - 这是一个很好的方式来绕过接收来自Twitter的420错误?那些更熟悉Twitter API的人,你能推荐一种方法吗?
我想在twitter上进行情绪分析.我不想存储任何推文,但对它们进行分析,如推文,这些推文说明了关于特定主题标签的积极内容等等.我在这里遇到的问题是访问推文太慢了.什么是访问推文并分析它们并向用户提供结果的方式.这里有一个很好的例子:http://www.sentiment140.com/search?query = hello&hl = en
虽然上面链接中的人只发了10条推文并进行分析.我想知道如何访问api以便用户可以快速响应.
即使这是一个很好的例子:http://snapbird.org/即使我知道如何访问推文并自动分析它们而不必将它们存储在任何地方也是一个完美的解决方案.
请注意,我只是询问如何在没有存储的情况下访问推文,这样我就可以直接对用户进行分析并在我的网络应用中显示.
twitter web-applications twitter-oauth sentiment-analysis twitter-streaming-api
Facebook粉丝页面的Twitter Streaming API的对应部分是什么?
如何从Facebook粉丝页面获得实时更新?
我一直在尝试使用Python请求来使用Twitter Streaming API.
文档中有一个简单的例子:
import requests
import json
r = requests.post('https://stream.twitter.com/1/statuses/filter.json',
data={'track': 'requests'}, auth=('username', 'password'))
for line in r.iter_lines():
if line: # filter out keep-alive new lines
print json.loads(line)
Run Code Online (Sandbox Code Playgroud)
执行此操作时,调用requests.post()
永不返回.我已经进行了实验并证明它肯定会连接到Twitter并从API接收数据.但是,它不是返回响应对象,而是在那里消耗尽可能多的数据,就像Twitter发送的一样多.从上面的代码判断,我希望requests.post()
返回一个与Twitter打开连接的响应对象,我可以继续接收实时结果.
(为了证明它正在接收数据,我使用另一个shell中的相同凭据连接到Twitter,于是Twitter关闭了第一个连接,并且该调用返回了响应对象.该r.content
属性包含连接打开时收到的所有备份数据. )
该文档未提及requests.post
在使用所有提供的数据之前导致返回所需的任何其他步骤.其他人似乎使用类似的代码而没有遇到这个问题,例如这里.
我正在使用:
我正在尝试访问我之前使用过的Twitter流,而不正确地使用Tweepy.现在我了解了如何使用Tweepy,我编写了以下Stream.py模块.当我运行它时,我收到错误代码401,它告诉我我的身份验证已被拒绝.但我之前使用相同的消费者令牌和秘密工作.有任何想法吗?
from tweepy.streaming import StreamListener
from tweepy import OAuthHandler
from tweepy import Stream
from tweepy import TweepError
from tweepy import error
#Removed. I have real keys and tokens
consumer_key = "***"
consumer_secret = "***"
access_token="***"
access_token_secret="***"
class CustomListener(StreamListener):
""" A listener handles tweets are the received from the stream.
This is a basic listener that just prints received tweets to stdout."""
def on_status(self, status):
# Do things with the post received. Post is the status object.
print status.text
return True …
Run Code Online (Sandbox Code Playgroud) 我在Twitter Streaming API中传递巴基斯坦的经度和纬度格式时遇到问题.此API提供了一些传递某些城市的经度和纬度的示例.下面给出了API位置示例中San Fransisco的位置,它在我的程序中运行良好.
-122.75,36.8,-121.75,37.8
但我试图使用以下位置从巴基斯坦获取推文,但服务器拒绝此位置.
71.69,32.01,70.69,33.01
请帮助我通过逗号分隔的4个值,这样我就可以从巴基斯坦获得推文了.
我想听流媒体API并跟踪确切的短语,这篇文章从2010年开始说不,你不能跟踪一个确切的短语,但我再问一遍,以防任何人有更新的消息.有可能吗?
我需要使用 Twitter Stream API 将推文数据流式传输到我的 firebase 云函数,如下所示:
client.stream('statuses/filter', params, stream => {
stream.on('data', tweet => {
console.log(tweet);
})
stream.on('error', error => {
console.log(error)
})
})
Run Code Online (Sandbox Code Playgroud)
流是连续的,但 firebase 云功能在一段时间后关闭。我可以使用什么解决方案来连续接收流数据?
twitter firebase twitter-streaming-api google-cloud-functions