大佬教程收集整理的这篇文章主要介绍了从 Twitter API 2.0 获取 user.fields 的问题,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想从 Twitter API 2.0 端点加载推文并尝试获取标准字段(作者、文本等)和一些扩展字段,尤其是。用户字段。 端点和参数的定义工作没有错误。 在生成的 Json 中,我只找到了标准字段,但没有找到所需的 user.fIElds(用户名、指标)。
示例代码片段:
from datetiR_851_11845@e import datetiR_851_11845@e,timedelta
import requests
import Json
import pandas as pd
# read bearer token for authentication
with open('bearer_token.txt') as fp:
BEARER_TOKEN = fp.read()
query_String = '("TSLA") (lang:en)'
# setup the API request
endpoint = 'https://API.twitter.com/2/tweets/search/recent'
headers = {'authorization': f'Bearer {BEARER_TOKEN}'}
params = {
'query': query_String,'max_results': '100','tweet.fIElds': 'created_at,lang,text,author_ID,public_metrics',# that doesn't work
'user.fIElds': 'name,username,public_metrics'
#'expansions': 'attachments.media_keys'
}
response = requests.get(endpoint,params=params,headers=headers) # send the request
print(Json.dumps(response.Json(),indent=3,sort_keys=TruE))
生成的 Json 显示了这一点(我缺少用户字段:名称、用户名、public_metrics):
{
"data": [
{
"author_ID": "33286321","created_at": "2021-03-13T16:25:02.000Z","ID": "1370772902769999874","lang": "en","public_metrics": {
"like_count": 0,"quote_count": 0,"reply_count": 0,"retweet_count": 0
},"text": "Try our Option Swing Trading service built for indivIDuals who want to Trade around their full-time careers. Take a free 10-day Trail No Credit Card $AAPL $TSLA $FB $MSFT"
},{
"author_ID": "1142453041364385794","created_at": "2021-03-13T16:24:41.000Z","ID": "1370772813469130756","retweet_count": 28
},"text": "RT @Stalingrad_Poor: With bitcoin Trading at $60k,TSLA has Now made more money on its bitcoin investment and selling regulatory credits th\u2026"
},{
"author_ID": "1349496824650989568","created_at": "2021-03-13T16:24:35.000Z","ID": "1370772791411245056","retweet_count": 3
},"text": "RT @VolaarRIDe: $OZSC By teaming up with the Gemm Network,we can Now provIDe our customers with additional services such as Project Financ\u2026"
},
问题: 我该怎么做才能在回复中获取这些信息?
根据documentation,要使用user.fields
参数,您必须在author_id
参数中包含expansions
。
这里是根据@Patriot 的回答调整的代码。
from datetiR_851_11845@e import datetiR_851_11845@e,timedelta
import requests
import json
import pandas as pd
# read bearer token for authentication
with open('bearer_token.txt') as fp:
BEARER_TOKEN = fp.read()
query_String = '("TSLA") (lang:en)'
# setup the API request
endpoint = 'https://api.twitter.com/2/tweets/search/recent'
headers = {'authorization': f'Bearer {BEARER_TOKEN}'}
params = {
'query': query_String,'max_results': '100','expansions': 'author_id','tweet.fields': 'created_at,lang,text,author_id,public_metrics','user.fields': 'name,username,public_metrics'
}
response = requests.get(endpoint,params=params,headers=headers) # send the request
print(json.dumps(response.json(),indent=3,sort_keys=TruE))
以上是大佬教程为你收集整理的从 Twitter API 2.0 获取 user.fields 的问题全部内容,希望文章能够帮你解决从 Twitter API 2.0 获取 user.fields 的问题所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。