上次说了有时候我们要带着cookie去访问一个网站,这里我们就用到Cookiejar,urllib也可以实现但比较繁琐,这里我们讲个简单的方法,就是只用requests库
requests库一个比urllib还要方便的HTTP客户端库,如果没有安全我们先安装
pip install requestsCookiejar是个cookie对象,包含了你想要得所有cookie。下面的例子就是如何获取雪球的行情信息,雪球必须先要访问网站保存cookie后,带着cookie访问json数据就可以获取行情数据了。
import requests
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36',
'Connection': 'keep-alive'
}
# 先访问主页
res = requests.get("https://xueqiu.com", headers=headers,verify=False)
# 保存cookies
cookies=res.cookies
# 在访问接口地址 把cookies带上
res = requests.get("https://stock.xueqiu.com/v5/stock/quote.json?symbol=SH601166", headers=headers,verify=False,cookies=cookies)
# 直接json转换
j=res.json()
print(j)
获取json结果
是不是很简单?其实requests用的也是urllib,只是更方便而已,运行过程中会报warning 因为是访问https资源没有验证tls证书,提示这样不安全,可以忽略。
因为本人多年的C#语言的开发,导致喜欢句尾打分号,GO和Python都不需要分号结尾,有时候手误,请谅解。