用下列代码进行网页爬取时报错
import lxml.html,requests
url ='https://www.python.org/dev/peps/pep-0020/'
xpath ='//*[@id="the-zen-of-python"]/pre/text()'
res = requests.get(url)
ht = lxml.html.fromstring(res.text)
text = ht.xpath(xpath)
print('Hello,\n'+''.join(text))
错误提示:RequestsDependencyWarning: urllib3 (2.0.0a3) or chardet (None)/charset_normalizer (2.0.12) doesn't match a supported version!
warnings.warn(
您遇到的错误是由于 urllib3 库版本不匹配导致的。在这种情况下,您可以尝试升级或降级 urllib3 库的版本来解决问题。
另外,在代码中使用 'requests' 和 'lxml' 两个库进行网络请求和解析网页信息。
解决方案:
升级urllib3库的版本,在终端输入pip install --upgrade urllib3,安装最新版本。
如果想降低urllib3库的版本,在终端输入pip install urllib3==x.x.x,x.x.x为需要降低的版本号。
也可以在请求网页时加入参数 verify=False,如 requests.get(url, verify=False)
urllib3模块和chardet模块之间版本不匹配造成的。
pip命令卸载之前版本不匹配的urllib3和chardet模块,重新下载对应版本的模块。具体操作请查看:
https://blog.csdn.net/weixin_61361738/article/details/126796998