问题描述
我正在尝试通过 Twitter 的完整档案从包含关键字“covid”的特定推文中获取一些信息。
import requests
import os
import json
def auth():
return os.environ.get("BEARER_TOKEN")
def create_url():
tweet_fields = "tweet.fields=created_at,retweet_count,lang"
q = "covid" + "&start_time=2020-01-01T00:00:00.00Z&max_results=30"
url = "https://api.twitter.com/2/tweets?{}&{}".format(q,tweet_fields)
return URL
def create_headers(bearer_token):
headers = {"Authorization": "Bearer {}".format(bearer_token)}
return headers
def connect_to_endpoint(url,headers):
response = requests.request("GET",url,headers=headers)
print(response.status_code)
if response.status_code != 200:
raise Exception(
"Request returned an error: {} {}".format(
response.status_code,response.text
)
)
return response.json()
def main():
f = open(os.getcwd() + 'Tweets.txt','w')
bearer_token = auth()
url = create_url()
headers = create_headers(bearer_token)
json_response = connect_to_endpoint(url,headers)
for i in json_response['data']:
f.write('Text: ' + i['text'] )
f.write('Retweets: ' + i['retweet_count'])
f.write('Language: ' + i['lang'])
f.close()
if __name__ == "__main__":
main()
但我在呼叫 i['retweet_count'] 时收到错误代码 400 - 错误请求
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)