python 没有http2.0的支持组件,查到nghttp2有做一个python的module, curl支持http2就是使用nghttp2这个第三方工具
安装nghttp2
安装nghttp2的python模组必须python为dev模式,python3.5以上支持asyncio 1.先安装python3-dev(编译python module时需要) sudo apt-get install python3-dev ,debian jessie 此版为3.4,因此要自行安装dev版 ubuntu 16.04版支持python3-dev 3.5以上版本2.https://github.com/nghttp2/nghttp2 下载打包文件 https://github.com/nghttp2/nghttp2/releases/download/v1.23.1/nghttp2-1.23.1.tar.gz
3.预先安装 的包 If you are using Ubuntu 16.04 LTS (Xenial Xerus) or Debian 8 (jessie) and above, run the following to install the required packages: sudo apt-get install g++ make binutils autoconf automake autotools-dev libtool pkg-config \ zlib1g-dev libcunit1-dev libssl-dev libxml2-dev libev-dev libevent-dev libjansson-dev \ libc-ares-dev libjemalloc-dev libsystemd-dev libspdylay-dev \ cython python3-dev python-setuptools 在ubuntu中,要安装pip sudo apt install python3-pip
4.安装 nghttp2 如有多个python,指定python 版本 ./configure PYTHON=/usr/local/bin/python3.5 PYTHON_VERSION=3.5 make sudo make install 出现错误的话执行下面的命令
4.1 执行 sudo ldconfig 否则在python中调用import nghttp2会出错误 ImportError: libnghttp2.so.14: cannot open shared object file: No such file or directory 以上nghttp2安装完成,进入python3,import nghttp2 可以看到已安装完成python module
安装 curl
如需使用curl 支持http2则需安装 新的curl https://github.com/curl/curl 下载源文件 7.47.0 以上版本支持下载 https://github.com/curl/curl/files/1101227/curl-7.54.1.tar.gz 解压并安装 ./configure --with-nghttp2=/usr/local 其中/usr/local为nghttp所安装的目录,根据情况设定 make sudo make install
安装curl支持http2.0的步骤 及nghttp2安装 nghttp2的python模组
最新推荐文章于 2024-08-04 23:37:48 发布