当前位置: 首页 > news >正文

【爬虫一】python爬虫基础合集一

【爬虫一】python爬虫基础合集一

        • 1. 网络请求了解
            • 1.1. 请求的类型
            • 1.2. 网络请求协议
            • 1.3. 网络请求过程简单图解
            • 1.4. 网络请求Headers(其中的关键字释义):请求头、响应头
        • 2. 网络爬虫的基本工作节点
            • 2.1. 了解简单网络请求获取响应数据的过程所涉及要点

1. 网络请求了解
1.1. 请求的类型
1. get
2. post
3. put
4. delete
5. head
1.2. 网络请求协议
http:超文本传输协议
https:安全超文本传输协议

网络协议之基础

1.3. 网络请求过程简单图解

在这里插入图片描述

1.4. 网络请求Headers(其中的关键字释义):请求头、响应头
Accept:文本的格式
Accept-Encoding:编码格式
Connection:长连接、短连接
Cookie:验证用的
Host:域名
Referer:来源
User-Agent:浏览器和用户信息

请求头、响应头、请求方式

2. 网络爬虫的基本工作节点
 1. 确认你需要爬取的URL2. 使用python代码发送请求获取数据3. 解析获取到的数据(精确数据)(1)找到新的目标回到第一步、二步、三步(自动化)4. 数据持久化上面4步所涉及模块及知识点:python3:urlib.request、request(第三方)、数据解析:xpath  bs4  数据存储
2.1. 了解简单网络请求获取响应数据的过程所涉及要点
import urllib.request
import urllib.parse
import string# 关键点1:python不支持中文,需要进行转义,涉及:urllib.parse.quote、string
# python:是解释性语言;解析器只支持 ascii 0- 127 不支持中文
url = 'http://www.baidu.com/s?wd='
name = '美女'
final_url = url + name
# 转义后的url:
url_end = urllib.parse.quote(final_url, safe=string.printable)
res =  urllib.request.urlopen(url_end)
# 关键点2:获得请求的响应response,是一个对象;需要read()后,编码decode("utf-8");
# 关键点3:写入文件with open() as f, 连接上下文
with open('test2.html', 'w', encoding='utf-8') as f:f.write(res.read().decode('utf-8'))
http://www.lryc.cn/news/506253.html

相关文章:

  • any/all 子查询优化规则的原理与解析 | OceanBase查询优化
  • ECharts 饼图:数据可视化的重要工具
  • 第10章:CSS最佳实践 --[CSS零基础入门]
  • 怎么在idea中创建springboot项目
  • 递归读取指定目录下的文件
  • 【模型压缩】原理及实例
  • 常用的JVM启动参数有哪些?
  • Curvelet 变换与FDCT
  • Django Admin 管理工具
  • Android笔记【19】
  • 矩阵在资产收益(Asset Returns)中的应用:以资产回报矩阵为例(中英双语)
  • Docker 中如何限制CPU和内存的使用 ?
  • 【AIGC-ChatGPT进阶提示词-《动图生成》】怪物工厂:融合想象力与创造力的奇幻世界
  • docker 使用 xz save 镜像
  • C#经典算法面试题
  • vulnhub靶场【DriftingBlues】之9 final
  • 有124个叶子节点的,完全二叉树最多有多少个节点
  • 从RNN到Transformer:生成式AI自回归模型的全面剖析
  • Java爬虫大冒险:如何征服1688商品搜索之巅
  • 基于Spring Boot的无可购物网站系统
  • 智能人家谱程序创意
  • Redis 7.x哨兵模式如何实现?基于Spring Boot 3.x版
  • 解决QTCreator在Debug时无法显示std::string类型的问题
  • leetcode 面试经典 150 题:无重复字符的最长子串
  • 0101多级nginx代理websocket配置-nginx-web服务器
  • 【前端】Jquery拍照,通过PHP将base64编码数据转换成PNG格式,并保存图像到本地
  • websocket再项目中的使用
  • ajax同步执行async:false无效的解决方法
  • 基于Qt的登陆界面设计
  • HarmonyOS 输入框组件:TextInput 和 TextArea 深度解析