访问Twitter用户的HomeTimeline

时间:2011-12-22 15:25:27

标签: python python-twitter

我正在尝试使用 python 开发 gtk3 桌面应用程序,以执行基本的Twitter功能,例如访问用户的主时间轴,发送推文等。

我正在使用python-twitter库,但我无法找到用于此目的的API调用。我查了一下,看到有几个patches,但它们似乎没有用。我能够使用库完成的其余功能。

我需要帮助!!!

[编辑] 这是我尝试使用python-twitter库的一个叉子时遇到的错误,如下所示:http://github.com/jaytaylor/python-twitter-api

Error:
>>api.getUserTimeline('gaurav_sood91')
Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "twitter.py", line 2646, in getUserTimeline
    self._checkForTwitterError(data)
  File "twitter.py", line 3861, in _checkForTwitterError
    if data.has_key('next_cursor'):
AttributeError: 'list' object has no attribute 'has_key'

1 个答案:

答案 0 :(得分:2)

使用code.google.com中的python-twitter模块,文档here

访问用户时间表:

import twitter
api = twitter.Api()
statuses = api.GetUserTimeline('@gaurav_sood91')
print [s.text for s in statuses]

发布推文:

import twitter
api = twitter.Api(consumer_key='consumer_key',
                  consumer_secret='consumer_secret',      
                  access_token_key='access_token',   
                  access_token_secret='access_token_secret')
status = api.PostUpdate('This is my update text.')

编辑以应用GetHomeTimeline补丁

免责声明:我在Windows上,因此您可能需要更改这些步骤。

  • 下载python-twitter
  • 提取到文件夹
  • issue 152
  • 下载0002-Support-for-home-timeline.patch文件
  • 将补丁文件复制/移动到提取的python-twitter目录的根目录(此目录中应该有一个名为twitter.py的文件)
  • 运行命令:patch twitter.py 0002-Support-for-home-timeline.patch,您应该收到补丁成功的消息
  • 在同一目录中,运行命令:python setup.py install
  • 运行交互式python shell:import twitterdir(twitter.Api)

您应该会看到列出的GetHomeTimeline方法。

GetHomeTimeline更新:

在问题152中找到补丁,它使用OAuth和JSON解析方法,现在是Status类的一部分。示例代码:

import twitter
api = twitter.Api(consumer_key='consumer_key',
                  consumer_secret='consumer_secret',      
                  access_token_key='access_token',   
                  access_token_secret='access_token_secret')
statuses = api.GetHomeTimeline()
print [s.text for s in statuses]