我正在尝试使用API​​提取表,但无法这样做。我很确定我没有正确使用它,任何帮助将不胜感激。

实际上,我正在尝试从此API中提取表,但无法找出正确的方法。这就是网站中提到的内容。我想提取Latest_full_data表。

python - 无法使用python从API提取表-LMLPHP

这是我获取表的代码,但出现错误:

import urllib
import requests
import urllib.request

locu_api = 'api_Key'

def locu_search(query):
    api_key = locu_api
    url = 'https://www.quandl.com/api/v3/databases/WIKI/metadata?api_key=' + api_key
    response = urllib.request.urlopen(url).read()
    json_obj = str(response, 'utf-8')
    datanew = json.loads(json_obj)
    return datanew


当我做print(datanew)时。更新:即使我更改它以返回新数据,错误仍然相同。
     我收到以下错误消息:
    未定义名称“ datanew”

最佳答案

我之前在urrlib中遇到过同样的问题。如果可能的话,我认为尝试使用请求是一个更好设计和运行的库。而且,它能够通过一个函数读取JSON,因此无需通过多行来运行JSON示例代码:

import requests

locu_api = 'api_Key'

def locu_search():
   url = 'https://www.quandl.com/api/v3/databases/WIKI/metadata?api_key=' + api_key
   return requests.get(url).json()

locu_search()


编辑:
您正在呼叫的端点可能不是正确的端点。我认为您正在寻找以下产品:

import requests

api_key = 'your_api_key_here'

def locu_search(dataset_code):
   url = f'https://www.quandl.com/api/v3/datasets/WIKI/{dataset_code}/metadata.json?api_key={api_key}'
   req = requests.get(url)
   return req.json()

data = locu_search("FB")


这将与有关公司的所有元数据一起返回。在这种情况下,Facebook。

08-25 01:01