爬虫的伪装,数据乱码的解决

简介: # 引言今天给大家带来第二篇爬虫的文章,主要给大家从爬虫的伪装,数据乱码和视频的爬取三个方面来学习python爬虫# 爬虫的伪装这里分别从### **浏览器伪装****访问地址伪装****3.ip地址伪装****4.控制访问速率****5.伪装用户cookie****6.被拒绝连接的处理**六个方面来讲解爬虫的伪装## **浏览器伪装**默认的爬虫是形如Python-[urllib](https://so.csdn.net/so/search?q=urllib&spm=1001.2101.3001.7020)/2.1的形式的,很多网站可能会在校验

引言

今天给大家带来第二篇爬虫的文章,主要给大家从爬虫的伪装,数据乱码和视频的爬取三个方面来学习python爬虫

爬虫的伪装

这里分别从###

浏览器伪装

访问地址伪装

3.ip地址伪装

4.控制访问速率

5.伪装用户cookie

6.被拒绝连接的处理

六个方面来讲解爬虫的伪装

浏览器伪装

默认的爬虫是形如Python-urllib/2.1的形式的,很多网站可能会在校验上发现我们,然后拒绝我们的请求。

所以我们可以通过浏览器的伪装来替换默认的

我们这里在浏览器中打开开发者工具,找到User-Agent这一栏

将其全部复制下来,然后我们初始化一个字典的对象,然后封装我们的User-Agent,完成伪装

(PS:我们python字典中存储的是键值对,直接将User-Agent那一栏粘贴进去,会报错,因为这是我们未定义的对象,但是其实只是字符串,所以我们要用引号分别囊括两部分,即:键和值。)

接下来我们在请求函数中使用这个字典

result = requests.get(url=url,hearders=headers).text

完成第一部分的伪装

访问地址伪装

访问地址指的是headers头部中的reffer信息,我们可以加入“reffer”信息伪装访问地址,将其封装到字典里并使用,完成封装

3.ip地址伪装

反爬虫检测到某个IP的访问次数很多,或者是访问的频率很快,就会封禁这个IP。当我们被封了之后,可以使用代理IP来解决。

4.控制访问速率

这里我们可以控制访问速率,正常人类访问一个网站一般速度上不会太奇怪,所以我们使用爬虫请求的时候,可以控制访问速率,通过延时,来避免被发现

5.伪装用户cookie

很多需要登录的网站,在登陆后会获得一个cookie,所以对于没有cookie的请求服务器往往会拒绝过滤掉我们的请求

6.被拒绝连接的处理

有的服务器会以诡异的请求去拒绝我们的请求,或者是通过一些奇怪的降低用户体验的机制来防止我们爬取他的信息,常见于一些小网站

我们可以通过递归调用自身,检测到异常就递归,反之继续请求其他的信息

数据乱码

有时候我们爬取到的信息可能会出现中文乱码

怎么理解中文乱码?

相当于一个说日语的人说了一句:“八嘎呀陆”,而接收者采用了中文来理解,就是一段不知道什么意思的“乱码”。

针对这个问题,在语言上我们可以采用录制原始音频(不管怎么解读,原始的音频,波动都是一样的)再通过日语来解读

程序也是同理

我们接收到requests的请求后,不直接获取text,而是获取二进制数据,然后再以某一编码去解读。

example:

import requests

url = "https://baike.baidu.com/item/%E7%9C%BC%E9%95%9C%E7%8E%8B%E8%9B%87/538562"

result = requests.get(url=url).text

print(result)

结果:

image.png

乱码的

解决版本:

import requests

url = "https://baike.baidu.com/item/%E7%9C%BC%E9%95%9C%E7%8E%8B%E8%9B%87/538562"

result = requests.get(url=url).content

real = result.decode("UTF-8")

print(real)

image.png

结果如上,我们就完成了乱码问题的解决

相关文章
|
3月前
|
数据采集 存储 API
网络爬虫与数据采集:使用Python自动化获取网页数据
【4月更文挑战第12天】本文介绍了Python网络爬虫的基础知识,包括网络爬虫概念(请求网页、解析、存储数据和处理异常)和Python常用的爬虫库requests(发送HTTP请求)与BeautifulSoup(解析HTML)。通过基本流程示例展示了如何导入库、发送请求、解析网页、提取数据、存储数据及处理异常。还提到了Python爬虫的实际应用,如获取新闻数据和商品信息。
660 2
|
3月前
|
数据采集 存储 XML
给你一个具体的网站,你会如何设计爬虫来抓取数据?
【2月更文挑战第23天】【2月更文挑战第75篇】给你一个具体的网站,你会如何设计爬虫来抓取数据?
64 1
|
3月前
|
数据采集 中间件 Python
Scrapy爬虫:利用代理服务器爬取热门网站数据
Scrapy爬虫:利用代理服务器爬取热门网站数据
|
16天前
|
数据采集 XML 前端开发
五:《智慧的网络爬虫》— bs4数据解析
【8月更文挑战第4天】bs4(Beautiful Soup 4)是python的一个库,最主要的功能是从网页抓取数据,它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式。BeautifulSoup会帮你节省数小时甚至数天的工作时间。在本篇文章的最后设置了一个爬取全国所有天气的项目作为本篇文章的总结,愿大家有所收获~
36 6
五:《智慧的网络爬虫》— bs4数据解析
|
28天前
|
数据采集 大数据 Python
FFmpeg 在爬虫中的应用案例:流数据解码详解
在大数据背景下,网络爬虫与FFmpeg结合,高效采集小红书短视频。需准备FFmpeg、Python及库如Requests和BeautifulSoup。通过设置User-Agent、Cookie及代理IP增强隐蔽性,解析HTML提取视频链接,利用FFmpeg下载并解码视频流。示例代码展示完整流程,强调代理IP对避免封禁的关键作用,助你掌握视频数据采集技巧。
FFmpeg 在爬虫中的应用案例:流数据解码详解
|
12天前
|
数据采集 数据可视化 搜索推荐
Python爬虫技术从去哪儿网获取旅游数据,对攻略进行可视化分析,提供全面的旅游攻略和个性化的出行建议
本文利用Python爬虫技术从去哪儿网获取旅游数据,通过数据处理和可视化分析,提供了全面的旅游攻略和个性化出行建议,同时探讨了热门目的地、出游方式、时间段以及玩法的偏好,为旅游行业和游客提供了有价值的参考信息。
|
6天前
|
数据采集 数据挖掘 数据处理
Python爬虫开发:爬取简单的网页数据
本文详细介绍了如何使用Python爬取简单的网页数据,以掘金为例,展示了从发送HTTP请求、解析HTML文档到提取和保存数据的完整过程。通过这个示例,你可以掌握基本的网页爬取技巧,为后续的数据分析打下基础。希望本文对你有所帮助。
|
7天前
|
数据采集 数据挖掘 数据处理
Python爬虫开发:爬取简单的网页数据
在数据分析中,数据的获取是第一步。随着互联网的普及,网络爬虫成为获取数据的重要手段。本文将详细介绍如何使用Python爬取简单的网页数据。
|
13天前
|
数据采集 数据挖掘 Python
python爬虫去哪儿网上爬取旅游景点14万条,可以做大数据分析的数据基础
本文介绍了使用Python编写的爬虫程序,成功从去哪儿网上爬取了14万条旅游景点信息,为大数据分析提供了数据基础。
|
28天前
|
数据采集 Web App开发 存储
Python-数据爬取(爬虫)
【7月更文挑战第24天】
57 7