嗨!
我遇到一些关于Python的tweepy库的问题。我第一次启动下面的脚本,一切都完美有效,第二次......脚本意外停止。
我没有发现任何有关此行为的信息,监听器在几秒钟后停止,我没有任何错误代码或其他内容。
有简单的代码:
import tweepy
import sys
import json
from textwrap import TextWrapper
from datetime import datetime
from elasticsearch import Elasticsearch
consumer_key = "hidden"
consumer_secret = "hidden"
access_token = "hidden"
access_token_secret = "hidden"
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
ES_HOST = {"host" : "localhost", "port" : 9200}
es = Elasticsearch(hosts = [ES_HOST])
class StreamListener(tweepy.StreamListener):
print('Starting StreamListener')
status_wrapper = TextWrapper(width=60, initial_indent=' ', subsequent_indent=' ')
def on_status(self, status):
try:
print 'n%s %s' % (status.author.screen_name, status.created_at)
json_data = status._json
#print json_data['text']
es.create(index="idx_twp",
doc_type="twitter_twp_nintendo",
body=json_data
)
except Exception, e:
print e
pass
print('Starting Receiving')
streamer = tweepy.Stream(auth=auth, listener=StreamListener(), timeout=3000000000)
#Fill with your own Keywords bellow
terms = ['nintendo']
streamer.filter(None,terms)
#streamer.userstream(None)
print ('Ending program')
然后有输出(只有2秒);
[root@localhost ~]# python projects/m/twitter/twitter_logs.py
Starting StreamListener
Starting Receiving
Ending program
我正在使用Python 2.7.5
关于?
的任何想法答案 0 :(得分:0)
嗨!
我通过virtualenv将我的Python版本更改为3.5,从而解决了这个奇怪的问题。目前,它运作良好。
这可能是由于python版本,无论如何有人有这个,我只是建议使用virtualenv测试另一个Python版本,看看会发生什么。
仅供参考:我已经在github项目中打开了问题#759。