Python Twitter库:选哪个?

46 投票
3 回答
19997 浏览
提问于 2025-04-16 03:20

我知道这个问题有点懒,但我想看看大家对哪个Python库用来处理Twitter的体验比较好。

我之前用过Python Twitter Tools,觉得它界面简洁美观,但似乎并不是很流行——在Twitter库页面上甚至都没有列出。

不过,还有很多其他的库被列出来了:

  • Konpaku Kogasa的oauth-python-twitter2。这个库把python-twitter和oauth-python-twitter结合起来,形成了一个进化版的OAuth工具。
  • DeWitt Clinton的python-twitter。这个库提供了一个纯Python的Twitter API接口。
  • Andrew Price的python-twyt。一个BSD许可的Twitter API接口库和命令行客户端。
  • Dustin Sallings的twitty-twister。一个Twisted的Twitter接口。
  • Ryan McGrath的twython。一个受python-twitter启发的REST和搜索库。
  • Josh Roesslein的Tweepy。支持OAuth、搜索API和流媒体API。

我的需求比较简单:

  • 能使用OAuth
  • 能关注用户
  • 能发送私信
  • 能发帖
  • 如果能用流媒体API就更好了

除了Twisted的那个(我这次不打算用Twisted),你们用过其他的库吗?如果用过,你们推荐哪个?

[更新] 顺便说一下,我最后还是选择了Python Twitter Tools。新版本很好地支持了OAuth,而且API设计得很巧妙,所以我继续用了它。

3 个回答

1

我用过tweepy这个工具,觉得它很好玩,也挺简单的。虽然我没有深入了解其他的选择,所以我的看法仅供参考哦。 :)

21

我先声明一下:我是Twython的作者。

所以,我建议你使用我的这个库。它现在支持OAuth认证,并且还附带了一个简单的Django应用,你可以在大约5分钟内就能搭建好。

它可以处理你需要的所有功能,除了流媒体API。我觉得这种功能应该根据具体情况来实现,因为通常需要的设置比较特殊。而且,大家对这个功能的需求也不高,所以我很难抽出时间来支持它。

pip install twython

http://github.com/ryanmcgrath/twython

24

python-twitter 这个库可以满足前四个需求。我之前用过,开始使用起来挺简单的。如果你想利用 Twitter 的实时数据接口,我推荐 tweetstream。这是一个很棒的 Python 模块,可以实时抓取刚发布的推文。根据你是否有 gardenhose/firehose 的权限,你能获取到的推文数量会有所不同,通常只能拿到一小部分。使用 tweetstream 的话,你还可以提供一些搜索条件,来筛选你想要的特定推文。我曾经用它做过一个项目,持续了 8 个小时,效果非常好。这两个模块都可以通过 Python 的 easy-install 安装。

补充一下:我不知道你打算用 Python/Twitter 做什么,但如果你计划抓取大量推文,记得 Twitter 上有很多推文是用英语以外的语言写的。一定要正确编码所有内容。

撰写回答