学习爬虫过程中解决下载网页乱码的问题

这个问题肯定是字符的编码错乱导致的。网上也有很多解决方案。我看过的方案很多,最好的就是这个了。

https://www.sohu.com/a/289375951_420744

原因文章说得很清楚,理论也讲得明白。解决方案我录在下面。版权归原作者。

方法一:直接指定res.encoding

import requests

url = "http://search.51job.com"

res = requests.get(url)

res.encoding = "gbk"

html = res.text

print(html)

方法二:通过res.apparent_encoding属性指定

import requests

url = "http://search.51job.com"

res = requests.get(url)

res.encoding = res.apparent_encoding

html = res.text

print(html)

方法三:通过编码、解码的方式

import requests

url = "http://search.51job.com"

res = requests.get(url)

html = res.text.encode(‘iso-8859-1‘).decode(‘gbk‘)

print(html)

原文地址:https://www.cnblogs.com/xiaolee-tech/p/12344592.html

时间: 2024-08-01 04:21:38

学习爬虫过程中解决下载网页乱码的问题的相关文章

很多编程问题是在睡觉过程中解决的

很多编程问题是在睡觉过程中解决的. 有两种方法: 首先将考虑的问题记住,然后睡觉,第二天醒来一些问题就被解决了,So Easy: 另一种方法是睡觉前在一些论坛或者用 tweet 发个帖子,第二天已经有人将解决方法发给你了. 做一名优秀程序员需要很长的时间,你需要学习很多东西,当遇到问题的时候,你需要知道向谁请教. 摘自:http://news.cnblogs.com/n/503469/

Amazon 解决下载文件乱码

Amazon 解决下载文件乱码 大家在做多个站点的时候,可能会遇到下载下来的报告文件出现乱码. 法国站点和意大利站点均会出现这样的情况,那怎么解决呢? 这是由于编码的问题而导致,在我们读取数据插入到本地数据库的时候,不妨先将格式转成对应国家能正确识别的格式. 在文档中也有看到. 还要一个问题需要说明,由于操作系统设置默认语言的原因,在小国家站点,我们下载下来的报告可能会出现乱码的情况.这种情况很正常,在调用接口的时候,也没有办法去解决直接下载就出现正常编码. 现在的方法是将下载下来的乱码文件,通

关于HTML中,绝对定位,相对定位的理解...(学习HTML过程中的小记录)

关于HTML中,绝对定位,相对定位的理解...(学习HTML过程中的小记录)   作者:王可利(Star·星星) HTML中 相对定位:position:relative; 绝对定位:position:absolut; 1.相对定位(div与div之间的关系)        body 标签其实就是一个大的盒子,在body里面设置 两个盒子div1 和 div2 ,而且两个盒子都给了它一个相对定位:position:relative;,那么div2 就会相对于 div1 排版,排在div1的下面,

利用JQ实现的,高仿 彩虹岛官网导航栏(学习HTML过程中的小记录)

利用JQ实现的,高仿 彩虹岛官网导航栏(学习HTML过程中的小记录)   作者:王可利(Star·星星) 总结: 今天学习的jQ类库的使用,代码重复的比较多需要完善.严格区分大小写,在 $("").css()   这里css是小写的,用 HBuilder 编写补全是大写的..这里要注意 主要使用的方法:jQuery 隐藏 / 显示    jQuery 淡出淡入 需要注意的知识点: 效果的样式: 代码如下:(亲们 自己展开拉~) 1 <!DOCTYPE html> 2 <

Python 爬虫过程中的中文乱码问题

python+mongodb 在爬虫的过程中,抓到一个中文字段,encode和decode都无法正确显示 注:以下print均是在mongodb中截图显示的,在pythonshell中可能会有所不同 比如中文 “余年”,假设其为变量a 1. print a 结果如下: 使用type查询之后,显示的确是unicode编码(正常情况下讲unicode编码内容直接存入mongodb中是可以正常显示的) 2. print type(a) 结果如下: 3. print a.encode('utf-8')

学习Android过程中遇到的问题及解决方法——电话监听

也许有时你会有这样一个需求:通电话时有一个重要的事需要记下来或者和一个陌生人特别是大骗子通话时,这是就想如果能把通话录下来就方便多了.(这才是我写这个代码的目的!!!) 在此过程中,犯了一个很大的错误.对电话状态还不熟悉就开始编程,使得我就算编写正确也出现各种bug. 先将代码列出来,供大家参考,然后解释错误和相关知识. activity_main.xml: 1 <?xml version="1.0" encoding="utf-8"?> 2 <L

学习Hadoop过程中遇到的困难

1:Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out 这是reduce预处理阶段shuffle时获取已完成的map的输出失败次数超过上限造成的,上限默认为5.引起此问题的方式可能会有很多种,比如网络连接不正常,连接超时,带宽较差以及端口阻塞等,通常框架内网络情况较好是不会出现此错误的. 2:Too many fetch-failures Answer: 出现这个问题主要是结点间的连通不够全面. 1) 检查 ./etc/h

学习JSP过程中的入门知识

俗话说的好,“万事开头难”,每每学一种新东西,起初的时候总是让人十分恶心.当然本人在学习JSP时也是如此,没有一条清晰的主线是很迷茫的.下面我给大家分享一点笔记,希望对初学者能有一点帮助. 首先我们来看一下静态网页的执行过程: 1.用户首先在浏览器的地址中键入要访问的网页地址(即:URL uniform resourse locator,统一资源定位符)并回车触发这个请求. 2.浏览器将请求发送到指定的web服务器上. 3.web服务器接收这些请求并根据.html的后缀名判断请求是HTML文件.

当学习前端过程中心态发生了变化

学习前端的过程中,我们会遇到各式各样的问题.有的是粗心大意,有的是知识理解的偏差,有的只是自己疲惫所致.这些问题一担越陷越深,都会人让自己的心态产生波动,我们只要想出各种方法来解决问题,才能让自己的心态恢复稳定. 前端相比后台来说,是最直接面对用户群的岗位,用户在访问网站时最直观的就是前端页面.网站出现任何的问题用户所抱怨也是最直观的东西.这就对前端要求提出了更高的要求.我们的职责就是精准的还原出设计图.可以说是经常会和1px的像素较真的工作,偏差也只能在几个像素值之间.这样较真的工作往往都会让