twitter 显示最新消息(使用twitter官方Api获得推文)(1)

twitter

想要在Twitter上爬取点东西,于是在网上找了一下,希望对有需要的小伙伴有帮助。

使用twitter推荐的,里面包含有 java , js ,python, rb 这样4种方式。

https://github.com/twitterdev/Twitter-API-v2-sample-code

相关接口文档在:https://developer.twitter.com/en 这里,需要梯子。

可能是思维方式不同,国外的人写的文档,感觉真的就是文档,根本看不懂。等看到实际使用的例子之后,再回来看文档基本就能看懂了。

大概需要5个权限,这几个权限都可以在twitter的 Developer Portal 中 的Projects & Apps 中创建并找到。

bearer_token

consumer_key

consumer_secret

access_token

access_token_secret

网上找到的几个开源的,用于处理twitter数据的项目。无需API的项目,现在已经不能使用了。

第一个,tweepy

python3 语言开发,需要 API 可以正常使用

第二个,Twarc2

python3 语言开发,需要 API 可以正常使用

第三个,TweetScraper

python3 语言开发,无需 API ,现在已经完全不能使用了。

虽然Twitter-API-v2-sample-code里面包含很多例子,但是都是单个使用的,需要自己组合起来,一般步骤是这样的:

1、根据关键字获取推文列表,可以使用的API方法有:

GET /2/tweets/search/recent # 获取最近的推文

GET /2/tweets/search/all # 获取全部推文

2、遍历推文列表,获得发布推文的ID,根据推文的ID获得用户ID

GET /2/tweets # 根据推文ID列表,批量获取推文

GET /2/tweets/:id # 根据推文ID ,获取单个推文

3、根据用户ID查询用户相关内容,比如 twitter的名字,关注人数,粉丝量,推文量等等

GET /2/users # 根据用户ID列表,批量获取用户信息,注意这里面包含用户关注和粉丝数量,推文数量,还有用户个人信息,还看到有推文信息,这个会测试确认下。

GET /2/users/:id # 根据用户ID ,获取单个用户的信息,包含内容同上。

GET /2/users/:id/following # 获得用户ID所关注的用户列表

GET /2/users/:id/followers # 获得用户ID的粉丝列表

新申请的API会遇到 API 被限制的问题。

This App has violated Twitter Rules and policies. As a result, certain functions will be limited.

这个问题twitter的解释是这样的

Twitter has automated systems that find and disable abusive API keys in bulk. Unfortunately, it looks like your application got caught up in one of these spam groups by mistake. We have reactivated the API key and we apologize for the inconvenience.

Twitter 拥有自动化系统,可以批量查找和禁用滥用 API 密钥。不幸的是,您的应用程序似乎错误地陷入了这些垃圾邮件组之一。我们已重新激活 API 密钥,对于给您带来的不便,我们深表歉意。

解决办法,给twitter写邮件说明一下,就能解决。目前能查询到的解决方案是这样的。

,