https使用python获取请求urllib2
问题描述:
我想从使用urllib2的quandl中获取数据。请检查下面的代码。https使用python获取请求urllib2
import json
from pymongo import MongoClient
import urllib2
import requests
import ssl
#import quandl
codes = [100526];
for id in codes:
url = 'https://www.quandl.com.com//api/v3/datasets/AMFI/"+str(id)+".json?api_key=XXXXXXXX&start_date=2013-08-30'
req = urllib2.Request(url)
response = urllib2.urlopen(req)
data = response.read()
print data
OR
for id in codes:
url = "https://www.quandl.com.com//api/v3/datasets/AMFI/"+str(id)+".json?api_key=XXXXXXXX&start_date=2013-08-30"
request = requests.get(url,verify=False)
print request
我得到HTTPERROR例外404第一种情况。当我使用请求模块时,即使在使用verify = false之后,我也会得到SSL错误。我正在浏览以前的帖子,但其中大部分都与HTTP请求有关。
感谢您的帮助。 J
答
您好像在代码的第一个版本中使用了错误的URL(.com.com
而不是.com
)以及不同的引号组合。改用以下,它应该工作:
import urllib2
import requests
codes = [100526]
for id in codes:
url = "https://www.quandl.com//api/v3/datasets/AMFI/"+str(id)+".json?start_date=2013-08-30"
req = urllib2.Request(url)
response = urllib2.urlopen(req)
print response.read()
for id in codes:
url = "https://www.quandl.com//api/v3/datasets/AMFI/"+str(id)+".json?start_date=2013-08-30"
response = requests.get(url,verify=False)
print response.text
要禁用有关SSL证书的警告,使得使用requests
请求之前使用the following code:
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
答
这对我很有用,但是您会收到有关SSL证书的警告,但您无需关心它。
import requests
codes = [100526];
for id in codes:
url = "https://www.quandl.com.com//api/v3/datasets/AMFI/"+str(id)+".json?api_key=XXXXXXXX&start_date=2013-08-30"
request = requests.get(url, verify=False)
print request.text
request.text
有你的回复数据。
感谢您的答复。我猜测.com导致错误。并确定我已经使用了'request = requests.get(url,cert =('C:\\ ssl \\ ca.crt','C:\\ ssl \\ ca.key')) jsonReq = request上传.json()' – Jitesh