我们需要一些电影的历史推文。现在,我们尝试了 Twitter 的流 API 和搜索 API。流媒体 API 无法为我们提供参数来选择我们需要的时间范围,而搜索 API 只能为我们提供提前一两周的数据。有没有办法让我们提取2014-05-01到2014-07-01的历史推文(例如)?我发现以下方法可以做到这一点:
Twitter 高级搜索 https://twitter.com/search-advanced?lang=en 它可以找到我需要的搜索结果。但我怎样才能下载搜索结果呢?有没有办法写个代码并保存搜索结果?
使用像 topsy 这样的 Twitter 分析网站。但它也有保存结果的困难。
似乎一些像 twitter4J 这样的软件包可以帮助解决这个问题: http://twitter4j.org/en/code-examples.html 有没有 python 或 R 包可以帮助我们做到这一点?
我们需要这些数据来进行研究。花费很长时间来提取数据并不是一个好的选择。有没有办法从专业网站购买这些数据?
您可以使用以下库https://github.com/Jefferson-Henrique/GetOldTweets-python获取 Twitter 中的旧推文。
使用 GetOldTweets-python 作为 Python 中的当前目录
cd GetOldTweets-python
然后执行以下操作
在Python中,
import got
tweetCriteria = got.manager.TweetCriteria().setQuerySearch('search_term').setSince("2014-05-01").setUntil("2014-07-01").setMaxTweets(10000)
tweet = got.manager.TweetManager.getTweets(tweetCriteria)[0]
print tweet.text
在航站楼,
python Exporter.py --querysearch 'search_term' --since 2014-05-01 --until 2014-07-01 --maxtweets 10000
将“search_term”替换为搜索词。
几个月前,Twitter 推出了其高级 API,您可以通过它提取 2006 年至今的历史 Twitter 数据。他们让开发者可以轻松购买 Twitter 数据。
以下是查看此内容的链接:https://developer.twitter.com/en/premium-apis.html
要访问 Twitter 高级 api,您需要访问 Twitter 开发者帐户。
如果您技术不成熟,并且想要最简单地获取 Twitter 历史数据,那么您可以使用第三方服务,例如 TrackMyHashtag、Sifter、Gnip、Infegy。
您可以使用 Gnip 的 Historical Powertrack 产品来执行此操作,但这是针对企业而不是研究人员的商业产品。
抓取 Twitter 网站违反服务条款和开发者政策。
公共搜索 API 仅支持 7-9 天的数据,因此即使使用 twitteR 或 tweepy(R 和 Python 选项)也无法让您检索您尝试访问的时间段内的数据。