Python twitter机器人发行

2024-04-28 18:13:27 发布

您现在位置:Python中文网/ 问答频道 /正文

尝试运行这个twitter python机器人。它只是基本上需要设置令牌(已经设置)和hashtag来搜索和收藏。我是个编程新手,所以我真的不知道我要去哪里。刚从github克隆了这段代码并尝试运行它。运行python2.7.2

"""

A simple Twitter bot using the Twitter Python library that finds users who tweet about "Christmas gift ideas,"
favorites their tweet, follows the users and sends them a friendly tweet with Amazon links of popular gift ideas.

"""

import urllib
import simplejson
import twitter

consumer_key = ''
consumer_secret = ''
access_token_key = ''
access_token_secret = ''

def searchTweets(query):
        search = urllib.urlopen("http://search.twitter.com/search.json?q="+query)
        dict = simplejson.loads(search.read())
        return dict

api = twitter.Api(consumer_key = 'consumer_key', consumer_secret = 'consumer_secret', access_token_key = 'access_token_key', access_token_secret = 'access_token_secret')
tweets = searchTweets("hashtag")
msg = "Tweet message"

for i in range(len(tweets["results"])):
        tweeter = tweets["results"][i]["from_user"]
        status = twitter.Api.GetStatus(api, tweets["results"][i]["id"])
        api.CreateFavorite(status)
        api.CreateFriendship(tweeter)
        api.PostUpdate('@' + tweeter + ' ' + msg)

我已经更改了令牌信息和内容,但我收到了以下错误:

^{pr2}$

我做错什么了?我使用的是与pip一起安装的python-twitter模块。在


Tags: keyimporttokenapisearchsecretaccessconsumer
1条回答
网友
1楼 · 发布于 2024-04-28 18:13:27

字典“tweets”中没有关键字“results”。在

要了解其中的内容,请在for循环之前添加以下代码行:

print tweets

它会打印如下:

^{pr2}$

这里,嵌套列表中有一个嵌套字典。那可能是你的问题。在本例中,您需要使用以下代码:

print result["items"][0]["owner"]["user_id"]

只是为了查看2254048的用户ID。检查twitter是否给出了类似的信息,并确保a)引用了一个存在的键;b)如果它是嵌套的,那么你用其他嵌套项正确地引用了它。在

相关问题 更多 >