脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - widows下安装pycurl并利用pycurl请求https地址的方法

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

2021-04-07 00:36Konvin_Zhi Python

今天小编就为大家分享一篇widows下安装pycurl并利用pycurl请求https地址的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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

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

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

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

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

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

?
1
curl http://baidu.com

步骤二:安装pycurl

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

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

?
1
pip install pycurl

步骤三:用python 请求https地址

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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()

以上这篇widows下安装pycurl并利用pycurl请求https地址的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/yu599207582/article/details/59108643

延伸 · 阅读

精彩推荐