爬虫技术笔记
文章目录
—python爬虫技术
前言
随着人工智能的不断发展,学习爬虫这门技术也越来越重要,很多人都开启了Python爬虫学习,本文记录了一些爬虫的笔记。
一、什么是爬虫?
-定义:写程序,模拟浏览器上网,让其去抓获相关数据
-风险:干扰了被访问网站的正常运营,捕获了商业机密时应及时停止爬取。
-分类:
分类 | 功能 |
---|---|
通用 | 一整张页面数据 |
聚焦 | 通用基础上,局部数据 |
增量式 | 最新更新的数据 |
二、爬虫的矛与盾(初始深入)
1.反爬机制(UA检测)
门户网站,可以通过制定相应的策略或者技术手段,防止爬虫程序进行网站数据的爬取。
2.反反爬策略(UA伪装)
爬虫程序可以通过制定相关的策略或者技术手段,破解门户网站中具备的反爬机制,从而可以获取门户网站。
3.robot.txt协议
君子协议。规定了网站中哪些数据可以被爬虫爬取哪些数据不可以被爬取。
三、 http&https协议
http协议:
1.概念:就是服务器和客户端进行数据交互的一种形式。
2.常用请求头信息
-User-Agent:请求载体的身份标识
-Connection:请求完毕后,是断开连接还是保持连接
3.常用响应头信息
-Content-Type:服务器响应回客户端的数据类型
https协议:
- 安全的超文本传输协议
- 加密方式
-对称秘钥加密
-非对称秘钥加密
-证书秘钥加密
四、requests模块
1.urllib模块
- requests模块
- 定义:python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率极高。
- 作用:模拟浏览器发请求。
- 如何使用:(requests模块的编码流程)
- 指定url
- 发起请求
- 获取响应数据
- 持久化存储
- 环境安装:
pip install requests
实战编码:第一个爬虫程序
需求:爬取搜狗首页的页面数据
#导包 import requests
#step1:指定ur1
url ‘https://www.sogou.com/’
#step_2:发起请求:使用get方法发起get请求,该方法会返回一个响应对象。参数url表示请求对应的ur1
response requests.get(url=url)
#stp3:获取响应数据:通过调用响应对象的txt属性,返回响应对象中存储的字符串形式的响应数据(页面源码数据)
page_text response.text
#step_4:持久化存储
with open(‘./sogou.html’,‘w’,encoding=‘utf-8’)as fp:
fp.write(page_text)
print('爬取数据完毕!!!)
实战巩固:
- UA检测
- UA伪装
总结:以上就是今天要讲的内容,本文仅仅简单介绍了python爬虫的技术。