Python爬虫基于lxml解决数据编码乱码问题
lxml是python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高
XPath,全称XML Path Language,即XML路径语言,它是一门在XML文档中查找信息的语言,它最初是用来搜寻XML文档的,但是它同样适用于HTML文档的搜索
XPath的选择功能十分强大,它提供了非常简明的路径选择表达式,另外,它还提供了超过100个内建函数,用于字符串、数值、时间的匹配以及节点、序列的处理等,几乎所有我们想要定位的节点,都可以用XPath来选择
XPath于1999年11月16日成为W3C标准,它被设计为供XSLT、XPointer以及其他XML解析软件使用,更多的文档可以访问其官方网站:https://www.w3.org/TR/xpath/
问题状况:
response = requests.get(url=url, headers=headers).text html = etree.HTML(response) name = html.xpath("/html/body/div[2]/ul/li[1]/a/p/text()")[0] print(name)
可以正常获取数据,但是结果是
å·²éªè¯ å®å ¨ ç¾ç
这样子的乱码
解决方法:
name = html.xpath("/html/body/div[2]/ul/li[1]/a/p/text()")[0].encode('ISO-8859-1').decode('UTF-8')
这边的UTF-8根据网页编码情况而定
看网页编码情况
F12
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示
这篇文章主要介绍了Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-04-04解决ImportError:cannot import name ‘Flatten‘&nb
这篇文章主要介绍了解决ImportError:cannot import name ‘Flatten‘ from ‘torch.nn‘问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-06-06
最新评论