Alpha Vantage API Key returns invalid error in Python, Response[200] 是什么?
Alpha Vantage API Key returns invalid error in Python, and what is Response[200]?
使用以下代码,我没有从 alphavantage 获取任何数据,我收到以下 API 错误:
"Error Message": "Invalid API call. Please retry or visit the documentation (https://www.alphavantage.co/documentation/) for TIME_SERIES_DAILY." }
import requests
import alpha_vantage
API_URL = "https://www.alphavantage.co/query"
data = {
"function": "TIME_SERIES_DAILY",
"symbol": "NIFTY",
"outputsize": "compact",
"datatype": "csv",
"apikey": "xxx",
}
response = requests.get(API_URL, params=data)
print(response.json())
我编辑了代码以尝试其他方法,但我还是发现了一些奇怪的东西,这次是:
Response [200]
这是代码:
import requests
import alpha_vantage
API_URL = "https://www.alphavantage.co/query"
data = {
"function": "TIME_SERIES_DAILY",
"symbol": "US",
"outputsize": "compact",
"datatype": "csv",
"apikey": "xxx"
}
response = requests.get(API_URL, params=data)
print(response)
这是怎么回事?
(下面的密钥混淆为 xxx
)
您尝试调用此 API 时出现了三个问题。
在您的第一次尝试中,您正确调用了 API 但使用了无效的代码。 NIFTY
以及其他全局索引不受 Alpha Vantage API 支持。
第二次尝试时,您打印出一个响应对象,当转换为字符串时,它看起来就像您收到的输出,Response[200]
意味着成功的 API 调用是制成。要从中获取数据,您必须打印 response.text
或 response.json()
第三个问题比较微妙,取决于您要做什么return。如果您想 return 使用 datatype: "csv"
的 csv 文件,则不能使用 response.json()
,因为该格式不适用于 json。您可以将该字段留空,改为使用默认值 datatype: "json"
。
如果你想得到一个csv文件,你可以使用print(response.text)
JSON 例子
import requests
import alpha_vantage
API_URL = "https://www.alphavantage.co/query"
data = {
"function": "TIME_SERIES_DAILY",
"symbol": "M&M.NSE",
"outputsize": "compact",
"apikey": "xxx"
}
response = requests.get(API_URL, params=data)
print(response.json())
CSV 示例
import requests
import alpha_vantage
API_URL = "https://www.alphavantage.co/query"
data = {
"function": "TIME_SERIES_DAILY",
"symbol": "M&M.NSE",
"outputsize": "compact",
"datatype": "csv",
"apikey": "xxx"
}
response = requests.get(API_URL, params=data)
print(response.text)
使用以下代码,我没有从 alphavantage 获取任何数据,我收到以下 API 错误:
"Error Message": "Invalid API call. Please retry or visit the documentation (https://www.alphavantage.co/documentation/) for TIME_SERIES_DAILY." }
import requests
import alpha_vantage
API_URL = "https://www.alphavantage.co/query"
data = {
"function": "TIME_SERIES_DAILY",
"symbol": "NIFTY",
"outputsize": "compact",
"datatype": "csv",
"apikey": "xxx",
}
response = requests.get(API_URL, params=data)
print(response.json())
我编辑了代码以尝试其他方法,但我还是发现了一些奇怪的东西,这次是:
Response [200]
这是代码:
import requests
import alpha_vantage
API_URL = "https://www.alphavantage.co/query"
data = {
"function": "TIME_SERIES_DAILY",
"symbol": "US",
"outputsize": "compact",
"datatype": "csv",
"apikey": "xxx"
}
response = requests.get(API_URL, params=data)
print(response)
这是怎么回事?
(下面的密钥混淆为 xxx
)
您尝试调用此 API 时出现了三个问题。
在您的第一次尝试中,您正确调用了 API 但使用了无效的代码。
NIFTY
以及其他全局索引不受 Alpha Vantage API 支持。第二次尝试时,您打印出一个响应对象,当转换为字符串时,它看起来就像您收到的输出,
Response[200]
意味着成功的 API 调用是制成。要从中获取数据,您必须打印response.text
或response.json()
第三个问题比较微妙,取决于您要做什么return。如果您想 return 使用
datatype: "csv"
的 csv 文件,则不能使用response.json()
,因为该格式不适用于 json。您可以将该字段留空,改为使用默认值datatype: "json"
。
如果你想得到一个csv文件,你可以使用print(response.text)
JSON 例子
import requests
import alpha_vantage
API_URL = "https://www.alphavantage.co/query"
data = {
"function": "TIME_SERIES_DAILY",
"symbol": "M&M.NSE",
"outputsize": "compact",
"apikey": "xxx"
}
response = requests.get(API_URL, params=data)
print(response.json())
CSV 示例
import requests
import alpha_vantage
API_URL = "https://www.alphavantage.co/query"
data = {
"function": "TIME_SERIES_DAILY",
"symbol": "M&M.NSE",
"outputsize": "compact",
"datatype": "csv",
"apikey": "xxx"
}
response = requests.get(API_URL, params=data)
print(response.text)