python 爬虫介绍入门

一、前戏:

1.你是否在夜深人静的时候,想看一些会让你更睡不着的图片却苦于没有资源…
2.你是否在节假日出行高峰的时候,想快速抢购火车票成功…
3.你是否在网上购物的时候,想快速且精准的定位到口碑质量最好的商品…

二、什么是爬虫:

通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程。

三、爬虫的价值:

一实际应用一就业

四、爬虫究竟是合法还是违法的?

一在法律中是不被禁止
一具有违法风险
一善意爬虫恶意爬虫

五、爬虫带来的风险可以体现在如下2方面:

一爬虫干扰了被访问网站的正常运营
一爬虫抓取了收到法律保护的特定类型的数据或信息l

六、爬虫在使用场景中的分类

一通用爬虫:
抓取系统重要组成部分。抓取的是一整张页面数据。
一聚焦爬虫:
是建立在通用爬虫的基础之上。抓取的是页面中特定的局部内容。
—增量式爬虫:

七、反爬机制

门户网站,可以通过制定相应的策略或者技术手段,防止爬虫程序进行网站数据的爬取。

八、反反爬策略

爬虫程序可以通过制定相关的策略或者技术手段,破解门户网站中具备的反爬机制从而可以获取门户

九、robots数据协议

君子协议:规定了网站中哪些数据可以被爬虫爬取哪些数据不可以被爬取。
例如在www.taobao.com/robots.txt下
在这里插入图片描述

十、http协议

一概念:就是服务器和客户端进行数据交互的一种形式(文本传输协议)。
常用请求头信息
	- User-Agent:请求载体的身份标识王
    - Connection:请求完毕后,是断开连接还是保持连接
常用响应头信息
     - Content-Type:服务器响应回客户端的数据类型

十一、https协议:

安全的超文本传输协议

十二、加密方式(三种):

(1)对称秘钥加密
客户端上传服务器信息时对信息进行加锁,同时把密钥也打包传输给服务器

在这里插入图片描述
缺点:在文件传输的时候被截断,密钥就被人获取。安全性很差
所以推出了非对称秘钥加密。
(2)非对称秘钥加密
在这里插入图片描述

但是非对称秘钥加密技术也存在如下缺点:
	第一个是:如何保证接收端向发送端发出公开秘钥的时候,发送端确保收到的是预先要发送的,而不会被挟持。只要是发送密钥,就有可能有被挟持的风险。
	第二个是:非对称加密的方式效率比较低,它处理起来更为复杂,通信过程中使用就有一定的效率问题而影响通信速度

(3)证书秘钥加密

在这里插入图片描述
服务器的开发者携带公开密钥,向数字证书认证机构提出公开密钥的申请,数字证书认证机构在认清申请者的身份,审核通过以后,会对开发者申请的公开密钥做数字签名,然后分配这个已签名的公开密钥,并将密钥放在证书里面,绑定在一起
服务器将这份数字证书发送给客户端,因为客户端也认可证书机构,客户端可以通过数字证书中的数字签名来验证公钥的真伪,来确保服务器传过来的公开密钥是真实的。一般情况下,证书的数字签名是很难被伪造的,这取决于认证机构的公信力。一旦确认信息无误之后,客户端就会通过公钥对报文进行加密发送,服务器接收到以后用自己的私钥进行解密。

requests模块

- urllib模块
- requests模块

requests模块:
python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率极高。
作用:模拟浏览器发请求。
如何使用:分四步
一指定url
一发起请求
一获取响应数据
—持久化存储

# 需求:爬取百度首页的页面数据
import requests
if __name__=="__main__":
    #step 1指定uclI
    url = 'https://www.baidu.com/'
    # step_2:发起请求
    #get方法会返回一介响应对象
    response =requests.get(url=url)
    # step3:获取响应数据text返回的是宝符患形式的响应数据
    page_text =response.text
    print(page_text)
    # 共step_4:持久化存储
    with open('./baidu.html','w',encoding='utf-8') as fp:
        fp.write(page_text)
    print('爬取数据结束!!!')

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值