我正在尝试自动化一个过程,在该过程中我必须从 Anbima(巴西监管机构)下载一些巴西基金报价。我已经能够解决检索访问令牌的第一步,但我不知道如何使用令牌来发出请求。这是教程网站 https://developers.anbima.com.br/en/como-acessar-nossas-apis/。
我尝试了很多方法,但我从请求中得到的只是“在请求中找不到所需的应用程序,由 HEADER client_id 标识。”
如果有人可以分享一些光。提前致谢。
import MyJsonProtocol.userFormat
val copy = ElasticsearchSource.typed[User](
elasticsearchParamsV7,
query = """{ "match_all": {} }""",
sourceSettings
)
答案 0 :(得分:0)
我遇到了同样的问题,但今天我可以晋级了。我相信您需要调整标题中的一些参数。 遵循我开发的一段代码。
from bs4 import BeautifulSoup
import requests
PRODUCTION_URL = 'https://api.anbima.com.br'
SANDBOX_URL = 'https://api-sandbox.anbima.com.br'
API_URL = '/feed/fundos/v1/fundos/'
CODIGO_FUNDO = '594733'
PRODUCTION = False
if PRODUCTION:
URL = PRODUCTION_URL
else:
URL = SANDBOX_URL
URL = URL + API_URL + CODIGO_FUNDO
HEADER = {'access_token': 'your token',
'client_id' : 'your client ID'}
html = requests.get(URL, headers=HEADER).content
soup = BeautifulSoup(html, 'html.parser')
print(soup.prettify())
沙盒 API 将返回一个虚拟的 JSON。要访问生产 API,您需要请求访问权限(我现在正在尝试这样做)。