Python爬虫基于lxml解决数据编码乱码问题


Posted in Python onJuly 31, 2020

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

Python爬虫基于lxml解决数据编码乱码问题

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python ZipFile模块详解
Nov 01 Python
python使用PyGame绘制图像并保存为图片文件的方法
Apr 24 Python
Python时间获取及转换知识汇总
Jan 11 Python
在python3环境下的Django中使用MySQL数据库的实例
Aug 29 Python
python+selenium识别验证码并登录的示例代码
Dec 21 Python
linux下python使用sendmail发送邮件
May 22 Python
Python设计模式之原型模式实例详解
Jan 18 Python
对python3 Serial 串口助手的接收读取数据方法详解
Jun 12 Python
pytorch numpy list类型之间的相互转换实例
Aug 18 Python
python 实现多线程下载m3u8格式视频并使用fmmpeg合并
Nov 15 Python
浅谈对python中if、elif、else的误解
Aug 20 Python
安装pyinstaller遇到的各种问题(小结)
Nov 20 Python
Python如何定义有可选参数的元类
Jul 31 #Python
Python爬虫爬取糗事百科段子实例分享
Jul 31 #Python
Python如何对齐字符串
Jul 30 #Python
Python3爬虫关于代理池的维护详解
Jul 30 #Python
Python读写压缩文件的方法
Jul 30 #Python
Python3爬虫里关于代理的设置总结
Jul 30 #Python
Python 如何创建一个简单的REST接口
Jul 30 #Python
You might like
2020年4月放送!《Princess Connect Re:Dive》制作组 & 角色声优公开!
2020/03/06 日漫
JS中encodeURIComponent函数用php解码的代码
2012/03/01 PHP
php批量上传的实现代码
2013/06/09 PHP
php一维二维数组键排序方法实例总结
2014/11/13 PHP
PHP指定截取字符串中的中英文或数字字符的实例分享
2016/03/18 PHP
Yii2框架视图(View)操作及Layout的使用方法分析
2019/05/27 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
2019/10/21 PHP
JavaScript中的isXX系列是否继续使用的分析
2011/04/16 Javascript
Javascript级联下拉菜单以及AJAX数据验证核心代码
2013/05/10 Javascript
js触发select onchange事件的小技巧
2014/08/05 Javascript
Javascript 绘制 sin 曲线过程附图
2014/08/21 Javascript
浅谈jQuery中setInterval()方法
2015/07/07 Javascript
JS求解三元一次方程组值的方法
2017/01/03 Javascript
COM组件中调用JavaScript函数详解及实例
2017/02/23 Javascript
angular select 默认值设置方法
2017/06/23 Javascript
Vue项目webpack打包部署到Tomcat刷新报404错误问题的解决方案
2018/05/15 Javascript
urllib2自定义opener详解
2014/02/07 Python
正确理解Python中if __name__ == '__main__'
2019/01/24 Python
Flask框架 CSRF 保护实现方法详解
2019/10/30 Python
PyQt5+python3+pycharm开发环境配置教程
2020/03/24 Python
pandas 数据类型转换的实现
2020/12/29 Python
HTML5如何实现元素拖拽
2016/03/11 HTML / CSS
英国布鲁姆精品店:Bloom Boutique
2018/03/01 全球购物
Delphi CS笔试题
2014/01/04 面试题
建筑总经理岗位职责
2014/02/02 职场文书
安全保证书范文
2014/04/29 职场文书
化工工艺设计求职信
2014/06/25 职场文书
课前一分钟演讲稿
2014/08/26 职场文书
辞旧迎新演讲稿
2014/09/15 职场文书
项目投资意向书范本
2015/05/09 职场文书
党校团干班培训心得体会
2016/01/06 职场文书
党风廉洁教育心得体会
2016/01/20 职场文书
毕业季聚会祝酒词!
2019/07/04 职场文书
MySQL快速插入一亿测试数据
2021/06/23 MySQL
SpringBoot+Vue+JWT的前后端分离登录认证详细步骤
2021/09/25 Java/Android
详解MongoDB排序时内存大小限制与创建索引的注意事项
2022/05/06 MongoDB