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

简介: # 引言今天给大家带来第二篇爬虫的文章,主要给大家从爬虫的伪装,数据乱码和视频的爬取三个方面来学习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

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

相关文章
|
1月前
|
数据采集 存储 API
网络爬虫与数据采集:使用Python自动化获取网页数据
【4月更文挑战第12天】本文介绍了Python网络爬虫的基础知识,包括网络爬虫概念(请求网页、解析、存储数据和处理异常)和Python常用的爬虫库requests(发送HTTP请求)与BeautifulSoup(解析HTML)。通过基本流程示例展示了如何导入库、发送请求、解析网页、提取数据、存储数据及处理异常。还提到了Python爬虫的实际应用,如获取新闻数据和商品信息。
|
1月前
|
数据采集 存储 XML
给你一个具体的网站,你会如何设计爬虫来抓取数据?
【2月更文挑战第23天】【2月更文挑战第75篇】给你一个具体的网站,你会如何设计爬虫来抓取数据?
|
1月前
|
数据采集 存储 XML
深入浅出:基于Python的网络数据爬虫开发指南
【2月更文挑战第23天】 在数字时代,数据已成为新的石油。企业和个人都寻求通过各种手段获取互联网上的宝贵信息。本文将深入探讨网络爬虫的构建与优化,一种自动化工具,用于从网页上抓取并提取大量数据。我们将重点介绍Python语言中的相关库和技术,以及如何高效、合法地收集网络数据。文章不仅为初学者提供入门指导,也为有经验的开发者提供进阶技巧,确保读者能够在遵守网络伦理和法规的前提下,充分利用网络数据资源。
|
1月前
|
数据采集 存储 架构师
上进计划 | Python爬虫经典实战项目——电商数据爬取!
在如今这个网购风云从不间歇的时代,购物狂欢持续不断,一年一度的“6.18年中大促”、“11.11购物节”等等成为了网购电商平台的盛宴。在买买买的同时,“如何省钱?”成为了大家最关心的问题。 比价、返利、优惠券都是消费者在网购时的刚需,但在这些“优惠”背后已产生灰色地带。
|
1月前
|
数据采集 数据可视化 数据挖掘
Python爬虫实战:抓取网站数据并生成报表
本文将介绍如何使用Python编写简单而高效的网络爬虫,从指定的网站上抓取数据,并利用数据分析库生成可视化报表。通过学习本文内容,读者将能够掌握基本的爬虫技术和数据处理方法,为日后开发更复杂的数据采集与分析工具打下坚实基础。
|
1月前
|
数据采集 机器学习/深度学习 搜索推荐
探索数据之海——网络爬虫与数据抓取技术的应用与发展
在当今信息爆炸的时代,获取大量高质量的数据成为各行各业的迫切需求。网络爬虫和数据抓取技术作为一种有效的手段,正在被广泛应用于各个领域。本文将深入探讨网络爬虫的原理、应用场景以及未来的发展趋势,为读者带来关于数据抓取技术的全面了解。
454 5
|
1月前
|
数据采集 开发者 Python
Python爬虫实战:利用Beautiful Soup解析网页数据
在网络爬虫的开发过程中,数据解析是至关重要的一环。本文将介绍如何利用Python的Beautiful Soup库来解析网页数据,包括解析HTML结构、提取目标信息和处理特殊情况,帮助开发者更好地实现爬虫功能。
|
1月前
|
数据采集 数据挖掘 API
主流电商平台数据采集API接口|【Python爬虫+数据分析】采集电商平台数据信息采集
随着电商平台的兴起,越来越多的人开始在网上购物。而对于电商平台来说,商品信息、价格、评论等数据是非常重要的。因此,抓取电商平台的商品信息、价格、评论等数据成为了一项非常有价值的工作。本文将介绍如何使用Python编写爬虫程序,抓取电商平台的商品信息、价格、评论等数据。 当然,如果是电商企业,跨境电商企业,ERP系统搭建,我们经常需要采集的平台多,数据量大,要求数据稳定供应,有并发需求,那就需要通过接入电商API数据采集接口,封装好的数据采集接口更方便稳定高效数据采集。
|
1月前
|
数据采集 中间件 Python
Scrapy爬虫:利用代理服务器爬取热门网站数据
Scrapy爬虫:利用代理服务器爬取热门网站数据
|
4天前
|
XML 数据采集 前端开发
五:爬虫-数据解析之xpath解析
本篇文章主要讲述了数据解析中的xpath解析,及相对路径的定位语法。最后以爬取豆瓣top250首页作为示例总结
21 5
五:爬虫-数据解析之xpath解析