- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Python 2.7 和最新版本的 tweepy 模块开发 Twitter 应用程序。我无法弄清楚的一件事是如何使用函数 rate_limit_status()
这是我的代码:
import tweepy, time, sys, random, pickle
import pprint
# argfile = str(sys.argv[1])
#enter the corresponding information from your Twitter application:
CONSUMER_KEY = ''
CONSUMER_SECRET = ''
ACCESS_KEY = ''
ACCESS_SECRET = ''
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_KEY, ACCESS_SECRET)
api = tweepy.API(auth)
public_tweets = api.home_timeline()
user = api.get_user('@MyUserName')
print api.rate_limit_status()
当我打印函数的结果时,它给了我一本我无法破译的大字典。我查看了 tweepy 文档,但找不到任何关于使用 rate_limit_status() 的好例子。
解决此类问题的下一步我应该做什么?
有没有一种工具可以格式化这些大字典,以便我可以阅读它们并尝试破译如何访问字典中的值?
编辑:
事实证明,我对什么是 Rest API 以及它的工作原理并没有很好的理解!我期待我脑子里的东西更复杂。
我实际上切换到 twitter Python 模块 twitter 库而不是 Tweepy,然后对如何使用 Twitter API 进行了大量研究。
两个对我真正有帮助的 youtube 视频是:
https://www.youtube.com/watch?v=7YcW25PHnAA
和
https://www.youtube.com/watch?v=fhPb6ocUz_k
Postman Chrome 应用程序非常棒,它让我能够轻松地测试和可视化我对 Twitter API 的调用是如何工作的,并且它很容易将生成的 JSON 格式化为这样我就可以阅读它。
为了进行快速计算,我还从 Postman 获取了 JSON 并将其放入该网站 http://konklone.io/json/获得一个 csv,然后我可以在 Excel 中打开它,并确保一切都按预期运行,并且我得到了正确数量的结果。
毕竟,编写与 Twitter API 交互的 Python 代码很容易!
在此添加所有这些,希望它能在将来帮助其他人!如果确实如此,请告诉我! :)
最佳答案
根据 Tweepy documentation
Returns the remaining number of API requests available to the requesting user before the API limit is reached for the current hour. Calls to rate_limit_status do not count against the rate limit. If authentication credentials are provided, the rate limit status for the authenticating user is returned. Otherwise, the rate limit status for the requester’s IP address is returned.
因此,用更简单的话来说,它会返回一个 JSON 对象,其中告诉您有关您已发出的请求数 和剩余请求数,乍一看难以阅读的原因在于,它包含您进行的每种类型的 API 调用的计数,而不仅仅是您刚刚执行的当前 API 调用。
例如,如果您运行上面的脚本,那么,您可以看到您已经调用了 api.home_timeline()
现在根据 twitter 规则和条例,您只能调用 15在给定的窗口 session 中调用此方法,因此,如果您解压缩返回的 JSON 对象,那么您可以看到,有很多数据,但是如果您分析数据,您会发现 api.home_timeline()
仅影响相关方法的限制,例如调用上述方法时,您可以使用以下方式检查速率限制:
data = api.rate_limit_status()
print data['resources']['statuses']['/statuses/home_timeline']
print data['resources']['users']['/users/lookup']
但是你必须对返回的 JSON 做一些研究,然后你可以从 JSON 对象中提取相关数据,因为返回的 JSON 对象很难阅读,你总是可以使用 these类型的链接,使其更具用户可读性,然后对其进行分析。
关于Python 2.7 - Tweepy - 如何获取 rate_limit_status()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30313124/
有人知道如何使用 tweepy 模块中的 search_full_archive 功能吗?我使用了类似于常规搜索的光标功能,但它不起作用。 import tweepy as tw api_key =
有人知道如何使用 tweepy 模块中的 search_full_archive 功能吗?我使用了类似于常规搜索的光标功能,但它不起作用。 import tweepy as tw api_key =
我正在使用此功能从 id 获取所有关注者: def getAllFollowers(id): followers = tweepy.Cursor(api.followers, id = id)
我在 Anacondas Python 3.3 中安装 Tweepy 时遇到问题。 首先,我转到了 Python 3.3 安装的脚本目录。然后我跑了 easy_install tweepy 如果我在默
当我尝试使用 tweepy 进行 Twitter 身份验证时,出现以下错误。 File "/usr/local/lib/python2.7/dist-packages/tweepy/models.
我安装了 pip install tweepy 并且安装没有错误。 Requirement already satisfied: tweepy in /Library/Python/2.7/site-
我在 PyCharm ed 4 中编写了这个 tweepy 源代码。 from __future__ import absolute_import, print_function from tweep
我在尝试在我的代码中导入 tweepy 库时遇到问题,我尝试卸载它然后重新安装它,但我仍然遇到同样的问题。 这是我的代码(错误)和命令行: 谢谢。 最佳答案 Tweepy 还不适用于 python 3
我正在尝试获取用户的 friend 并将他们附加到给定条件的列表中: for friend in tweepy.Cursor(api.friends).items(): if friend n
我正在尝试将 Twitter API 的版本 2 与 tweepy 3.10.0 一起使用,但在遵循文档 https://docs.tweepy.org/en/latest/client.html 时
通过应用 tweepy.Cursor 和 api.search 方法(如下所示),Tweepy 在提取我需要的所有其他信息(主题标签除外)方面做得很好。我从文档中知道 Hashtags 在这个结构状态
TheStreamer.filter(languages=["en"], track=['Bruno Mars is lovely']) 有没有办法让它跟踪一个确切的短语,而不是相关的短语?例如, '
我有以下代码 api = tweepy.API(auth,wait_on_rate_limit=True) for tweet in tweepy.Cursor(api.search,
我最近一直在玩 tweepy,我试图拉动给定用户的关注者和关注者。 followingids = [] followids = [] userid = "Someone"#sets target
我想提取所有国家/地区的所有阿拉伯语推文。 我修改了这个 tutorial中的代码。这是我的搜索查询。api.search(q="*", count=tweetsPerQry, lang ['ar']
我想提取所有国家/地区的所有阿拉伯语推文。 我修改了这个 tutorial中的代码。这是我的搜索查询。api.search(q="*", count=tweetsPerQry, lang ['ar']
当我尝试调用一些方法(例如 show_friendship)时,我收到错误 raise TweepError(error_msg, resp, api_code=api_error_code) twe
我正在使用 tweepy 访问大量推文。许多推文都被截断了,所以我想获取一些推文的全文,我有这些推文的 id。 我的问题是:tweepy api 实例有一种一次下载多条推文的方法 (api.statu
我正在尝试让我的机器人能够通过搜索 API 搜索多个关键字。到目前为止我已经: f = open('swear.txt', 'r') search = f.read().splitlines() f.
我想跟踪特定主题标签的所有推文,但我只需要带有地理位置的推文。此行无法正常工作,结果都是带有地理位置的推文。 stream.filter(track=["hashtag"],locations = G
我是一名优秀的程序员,十分优秀!