Twitter 用户查找请求错误混淆

Posted

技术标签:

【中文标题】Twitter 用户查找请求错误混淆【英文标题】:Twitter User Lookup Request Error Confusion 【发布时间】:2020-11-10 14:51:10 【问题描述】:

在我的 Twitter 开发者帐户获得批准后,我已激活我的应用程序。我正在尝试使用 Twitter Api 获取与电子邮件/电话号码相关联的 Twitter 帐户。 它与 screen_nameuser_id 等参数完美搭配,但在尝试将电子邮件或电话号码作为参数时,

回应说:

无法验证您的身份

代码是

import requests

url = "https://api.twitter.com/1.1/users/lookup.json?map=true&phone=1234567890"
payload = 
headers = 
  'Authorization': 'OAuth realm="http%3A%2F%2Fapi.twitter.com",oauth_consumer_key="<consumer_key>",oauth_token="<outh_token>",oauth_signature_method="HMAC-SHA1",oauth_timestamp="1595318479",oauth_nonce="<nonce>",oauth_version="1.0",oauth_signature="<sig>"'


response = requests.request("GET", url, headers=headers, data = payload)
print(response.text.encode('utf8'))

回应:


    "errors": [
        
            "code": 32,
            "message": "Could not authenticate you."
        
    ]

对此有何原因和建议?

将感谢积极的反馈。

【问题讨论】:

【参考方案1】:

您是否尝试过根据查询参数为 nonce 生成、Timestamp、base_url 等标头使用动态值生成?

【讨论】:

【参考方案2】:

在 Twitter API 上不能使用电子邮件或电话号码作为查询参数。 API 中不支持此功能。请参阅users/lookup 和users/search 上支持的参数的文档。

【讨论】:

是的,我知道 twitter 的官方文档中不再提到电子邮件/电话搜索,但它是在 2015 年的文档中。此外,路由正在工作,因为我已经从 android 捕获了网络调用,并且相同的请求正在处理参数,但是当我更改电子邮件/电话等参数时,它会出现此错误。这个请求工作得很好,但可能是我缺少一些参数或类似的东西。但是使用相同的参数,Tokens。 我查看了可追溯到 2013 年的文档,但这些参数从未在此端点上可用。如果您试图对 Twitter 应用程序中的某些内容进行逆向工程,那么这违反了 Twitter 开发者政策和服务条款 - 请使用官方 API。无法使用电子邮件或电话号码在 API 中查找 Twitter 用户。

以上是关于Twitter 用户查找请求错误混淆的主要内容,如果未能解决你的问题,请参考以下文章

使用 Twitter 请求电子邮件

Node.js Twitter Bot 返回错误:错误的 Twitter 流请求:410

使用 Twitter API 发送直接消息不起作用

如何通过 Twitter API 找人?

从 Twitter 请求用户的电子邮件

iPhone以编程方式在Twitter上关注用户