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模块学习 re 正则表达式
May 19 Python
Python中sort和sorted函数代码解析
Jan 25 Python
python的pip安装以及使用教程
Sep 18 Python
python 堆和优先队列的使用详解
Mar 05 Python
python爬虫之验证码篇3-滑动验证码识别技术
Apr 11 Python
python getpass模块用法及实例详解
Oct 07 Python
python使用opencv在Windows下调用摄像头实现解析
Nov 26 Python
Python unittest工作原理和使用过程解析
Feb 24 Python
利用python画出AUC曲线的实例
Feb 28 Python
python爬虫实现爬取同一个网站的多页数据的实例讲解
Jan 18 Python
python利用appium实现手机APP自动化的示例
Jan 26 Python
Python中super().__init__()测试以及理解
Dec 06 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
PHP数字格式化
2006/12/06 PHP
PHP的变量总结 新手推荐
2011/04/18 PHP
使用Discuz关键词服务器实现PHP中文分词
2014/03/11 PHP
php7基于递归实现删除空文件夹的方法示例
2017/06/15 PHP
PHP使用redis消息队列发布微博的方法示例
2017/06/22 PHP
php实现二叉树中和为某一值的路径方法
2018/10/14 PHP
jQuery图片滚动图片的效果(另类实现)
2013/06/02 Javascript
JS中类或对象的定义说明
2014/03/10 Javascript
JavaScript中的Math.SQRT1_2属性使用简介
2015/06/14 Javascript
JavaScript中的this使用详解
2016/07/27 Javascript
jquery实现点击页面回到顶部
2016/11/23 Javascript
Highcharts+NodeJS搭建数据可视化平台示例
2017/01/01 NodeJs
js 去掉字符串前后空格实现代码集合
2017/03/25 Javascript
NodeJS设计模式总结【单例模式,适配器模式,装饰模式,观察者模式】
2017/09/06 NodeJs
基于jQuery解决ios10以上版本缩放问题
2017/11/03 jQuery
基于Swiper实现移动端页面图片轮播效果
2017/12/28 Javascript
Express本地测试HTTPS的示例代码
2018/06/06 Javascript
浅谈高大上的微信小程序中渲染html内容—技术分享
2018/10/25 Javascript
手把手教你 CKEDITOR 4 扩展插件制作
2019/06/18 Javascript
关于vue-cli3打包代码后白屏的解决方案
2020/09/02 Javascript
python中查看变量内存地址的方法
2015/05/05 Python
Python实现matplotlib显示中文的方法详解
2018/02/06 Python
python3实现SMTP发送邮件详细教程
2018/06/19 Python
Python实现朴素贝叶斯分类器的方法详解
2018/07/04 Python
Sanic框架基于类的视图用法示例
2018/07/18 Python
Python实现繁?转为简体的方法示例
2018/12/18 Python
使用PyTorch实现MNIST手写体识别代码
2020/01/18 Python
Python实现名片管理系统
2020/02/14 Python
基于python连接oracle导并出数据文件
2020/04/28 Python
好药师网上药店:安全合法的网上药品零售药房
2017/02/15 全球购物
幼师自荐信范文
2013/10/06 职场文书
消防先进事迹材料
2014/02/10 职场文书
鼋头渚导游词
2015/02/05 职场文书
保险公司反洗钱宣传活动总结
2015/05/08 职场文书
2015国庆节66周年标语
2015/07/30 职场文书
零基础学java之循环语句的使用
2022/04/10 Java/Android