Gleb Asked:2020-10-11 03:15:42 +0800 CST2020-10-11 03:15:42 +0800 CST 2020-10-11 03:15:42 +0800 CST 如何通过请求查看您是否在 stackoverflow.com 上收到消息或回复 772 是否可以制作一个使用该模块的python脚本requests(为什么请求:嗯,因为它是轻量级的,我知道一点,如果有其他选项,那么建议)以便在 中观看新消息ru.stackoverflow.com?而不是看,而是找出它们是什么。 使用 Python 3.6.1 可以做到吗?如果可能,怎么做? python 1 个回答 Voted Best Answer jfs 2020-10-12T20:37:05+08:002020-10-12T20:37:05+08:00 要检查由以下标识的 Stack Overflow 用户是否有未读的传入消息access_token: #!/usr/bin/env python import os import sys import requests url = ('https://api.stackexchange.com/2.2/me/inbox/unread' + '?key=' + os.environ['SO_KEY'] + '&access_token=' + os.environ['SO_TOKEN'] + '&site=stackapps') r = requests.get(url) r.raise_for_status() items = r.json()['items'] has_unread = len(items) > 0 if has_unread: assert next((True for x in items if x['is_unread']), False) print('there are unread items') else: print('nothing new') sys.exit(not has_unread) # success if there are unread items 该脚本使用/me/inbox/unread来自 Stack Exchange API 的方法。请参阅文档链接和实时示例(单击“获取令牌”和“运行”按钮以查看 API 调用的结果)。 此请求中需要该参数site,但会返回来自所有站点的所有未读传入消息。 要工作,环境变量必须分别包含 API 密钥SO_KEY和。SO_TOKENaccess_token API 密钥只是 stackexchange API 使用的应用程序的唯一标识符(此密钥在您注册应用程序时发出)。/2.2/inbox/匿名用户无法获得来自的信息,因此需要更多信息access_token(这需要 API 密钥)。对于不需要身份验证的请求,该密钥还增加了对 API 的允许请求数量(<--该链接描述了如何access_token根据应用程序类型获取它)。 要熟悉 Stack Overflow API,您可以进行不需要身份验证的调用,例如. 和/或使用现成的库,如 py-stackexchange、example。
要检查由以下标识的 Stack Overflow 用户是否有未读的传入消息
access_token
:该脚本使用
/me/inbox/unread
来自 Stack Exchange API 的方法。请参阅文档链接和实时示例(单击“获取令牌”和“运行”按钮以查看 API 调用的结果)。此请求中需要该参数
site
,但会返回来自所有站点的所有未读传入消息。要工作,环境变量必须分别包含 API 密钥
SO_KEY
和。SO_TOKEN
access_token
API 密钥只是 stackexchange API 使用的应用程序的唯一标识符(此密钥在您注册应用程序时发出)。
/2.2/inbox/
匿名用户无法获得来自的信息,因此需要更多信息access_token
(这需要 API 密钥)。对于不需要身份验证的请求,该密钥还增加了对 API 的允许请求数量(<--该链接描述了如何access_token
根据应用程序类型获取它)。要熟悉 Stack Overflow API,您可以进行不需要身份验证的调用,例如. 和/或使用现成的库,如 py-stackexchange、example。