网络编程
位置:首页>> 网络编程>> 网络编程>> widows下安装pycurl并利用pycurl请求https地址的方法

widows下安装pycurl并利用pycurl请求https地址的方法

作者:Konvin_Zhi  发布时间:2023-07-09 03:21:18 

标签:pycurl,https

步骤一:下载对应的CURL压缩包并在windows上配置好环境变量

进入CURL官网下载对应的windows压缩包。地址:点击打开链接

widows下安装pycurl并利用pycurl请求https地址的方法

把下载好的压缩包解压到自己喜欢的一个目录下,我暂时放在E盘curl目录下面(E:\curl)

然后配置windows的环境变量,把E:\curl添加到path下

打开CMD 输入命令,看一下有没有正常输出,如果有则证明curl已安装成功


curl http://baidu.com

步骤二:安装pycurl

(注意:本文假设已经成功安装好python及pip,如需相关安装教程请自行百度)

打开CMD执行如下命令,安装pycurl


pip install pycurl

步骤三:用python 请求https地址

注意:若果windows调用pycurl请求https地址时抛出SSL相关错误时,大多是由于没有指定证书路径导致的,参考下面解决方案


import pycurl
import json
from io import *
try:
c = pycurl.Curl()
b = BytesIO()
c.setopt(pycurl.WRITEFUNCTION,b.write)
c.setopt(c.URL, 'https://baidu.com')
c.setopt(pycurl.SSL_VERIFYPEER, 1)
c.setopt(pycurl.SSL_VERIFYHOST, 2)
#<TIPS>windows 要指定证书的路径不然会出现(77, "SSL: can't load CA certificate file E:\\curl\\ca-bundle.crt")
#证书路径就在curl下载的压缩包里面。mac/linux下面可以注释掉。
c.setopt(pycurl.CAINFO, "E:\curl\ca-bundle.crt")
#</TIPS>
c.perform()
result = b.getvalue().decode("utf-8")
print(result)
except BaseException as e:
print(e)
finally:
b.close()
c.close()

来源:https://blog.csdn.net/yu599207582/article/details/59108643

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com