我一直在尝试使用python从API获取数据 - 我可以手动访问,如下所示
curl --location --compressed --header “Authorization: Bearer [ACCESS_TOKEN]” [STREAM_URL]
我如何在python中使用它 - 我已经阅读过使用requests
但是如何在python中处理Access_Token部分的示例
任何帮助都会受到赞赏吗?
此致 VB
答案 0 :(得分:0)
只需像在curl示例中那样定义标题。但在这种情况下,它是一个词典。假设你想使用requests
,你会做这样的事情:
import requests
url = [STREAM_URL]
headers = {"Authorization": "Bearer [ACCESS TOKEN]"}
r = requests.get(url, headers=headers)
print(r.text)
答案 1 :(得分:0)
使用什么没有什么不同。 urllib附带python,如果你不想下载额外的包,请使用urllib。
正如OP在curl命令中提到--compressed
,我们应该这样做以获取gzip压缩内容:
编辑ars
回答:
import sys
if sys.version_info.major == 3:
import urllib.request as urllib2
else:
import urllib2
from StringIO import StringIO
import gzip
request = urllib2.Request('http://example.com/')
request.add_header('Accept-encoding', 'gzip')
request.add_header('Authorization', 'Bearer [ACCESS_TOKEN]')
response = urllib2.urlopen(request)
if response.info().get('Content-Encoding') == 'gzip':
buf = StringIO( response.read())
f = gzip.GzipFile(fileobj=buf)
data = f.read()
Does python urllib2 automatically uncompress gzip data fetched from webpage?