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

python网络爬虫学习

一、理清步骤

1、获取网页内容(比如向浏览器询问请求,浏览器返回经过渲染处理的问题答案,美化页面,使用户清晰明了;而程序向网页发送请求得来的是较为原始的不经加工的纯数据,比较原生裸露庞大碎片复杂)

学习:HTTP请求、python requests、HTML网页解读

HTTP请求:GET请求(获取数据,爬虫常用)、POST请求(提交数据)

【请求行】 GET /index.html HTTP/1.1 【请求头】 Host: www.example.com User-Agent: Mozilla/5.0 (Windows NT 10.0) Accept: text/html Cookie: session_id=abc123 【请求体】 (GET 通常为空,POST 放提交的数据)

host:www.example.com 我要访问的网址

User-Agent 用户的个人信息

Accept 用户要获取的信息

(爬虫就是模拟人为浏览网站获取信息)

HTTP响应:

【状态行】 HTTP/1.1 200 OK 【响应头】 Content-Type: text/html; charset=utf-8 Content-Length: 1234 Set-Cookie: session_id=abc123; Path=/ Server: nginx/1.18.0 Date: Wed, 25 Jun 2026 07:11:00 GMT 【空行】 【响应体】 <!DOCTYPE html> <html> <head><title>百度一下</title></head> <body>...</body> </html>

状态行:

HTTP/1.1 200 OK ↑ ↑ ↑ 协议版本 状态码 状态描述

状态码:

状态码含义通俗解释你的应对
200OK😊 一切正常,你要的数据在包里直接拆包取数据
301Moved Permanently🏠 搬家了,去新地址requests自动跳转
302Found🏠 临时去别的地方同上,注意新 URL
400Bad Request❌ 你的请求格式错了检查参数、URL
401Unauthorized🔒 没登录,不许看加 Cookie/Token
403Forbidden🚫 认出你是爬虫,拒绝换 Headers、代理、降速
404Not Found🔍 页面不存在检查 URL 拼写
500Internal Server Error💥 服务器自己崩了等会儿再试
502Bad Gateway🚪 网关挂了服务器问题,换时间
503Service Unavailable😴 服务器太忙/维护Retry-After 头里有等待时间

响应头:告知客户端的一些信息

响应体:服务器想给客户端的一些内容

python requests命令行:A、终端下载requests库 pip install requests

B、代码段:import requests>>headers={“User-Agent”:任意网站的粘贴过来}(右键,检查,网络,User-Agent)

C、response=requests.get(网址,headers=headers)

D、print(response.text/status_code)status_code查看状态码,出现200则可以text在终端返回HTMP网页源码

2、解析网页内容(对返回的庞大数据进行提取,得到你想要的数据:如想比较商品价格只需提取价格数据,而剔除评价、商家、品牌)

学习:HTML网络结构、beautifulsoup库

HTLM网页解读

HTML 标签文章中的对应作用
<html>整篇文章告诉浏览器"这是一篇网页"
<head>文章封面信息(标题、作者、日期)浏览器需要知道,但读者不直接看到
<body>文章正文读者在页面上看到的内容
<h1>大标题最重要的标题
<p>段落正文内容
<a>引用/链接点击跳转到别处
<img>插图显示图片
<div>章节/区块把内容分组
<table>表格行列数据
<!DOCTYPE html> <!-- 声明:这是 HTML5 文档 --> <html lang="zh-CN"> <!-- 整篇网页的开始,语言是中文 --> <head> <!-- 头部:浏览器看的"元信息" --> <meta charset="UTF-8"> <!-- 编码:防止中文乱码 --> <title>我的网页标题</title> <!-- 浏览器标签页上显示的名字 --> <style> <!-- 内部 CSS:美化样式 --> body { font-family: "Microsoft YaHei"; } </style> </head> <body> <!-- 身体:用户看到的所有内容 --> <h1>这是一个大标题</h1> <p>这是一个段落。</p> </body> </html> <!-- 网页结束 -->

beautiful soup库终端安装bs4库pip install bs4

引入from bs4 import BeautifulSoup

访问请求import requests

content=requests.get(网站).text

soup=BeautifulSoup(content,“html.parser”)指定html解析器

all_titles=soup.findAll("要查找的东西h/table")

for title in all_titles:

all_links=title.findAll(‘什么元素’)

for link in all_links:

print(link.string)

查找元素所属,右键检查,根据爬虫任务的不同具体去分析提取内容的一致性来修改代码

3、存储或分析数据

http://www.gsyq.cn/news/1591993.html

相关文章:

  • Scale-Across场景与技术方案初探
  • DVWA文件包含漏洞实战:从原理到高级利用与防御
  • 高考热门专业十年大洗牌:你爸妈推荐的那些,大学自己都不开了
  • 第8篇:初遇Power Query——一键清洗大区报表
  • 兰亭妙微原创作品 | 智能制造驾驶舱UI设计
  • 银行项目网上支付接口调用测试实例
  • 深度解析猫抓浏览器扩展:从M3U8嗅探到资源捕获的完整技术架构
  • 从理论物理视角构建凯瑟琳轮模型:几何、拓扑与数值模拟
  • Kinetis Expert Pins工具全平台安装与配置实战指南
  • 深度评测 | 从剂型创新到材料突破:2026年肛肠外科护理产品的技术迭代与选购逻辑
  • 纯RGB视觉基于神经网络的点云重建SLAM3R(对白墙等弱纹理环境友好)
  • G2-Laplacian流与超辛流的降维演化:连接七维与四维几何结构
  • 大模型小白必看:Transformer位置编码全解析(收藏版)
  • vLLM部署下一代大模型:PagedAttention与动态上下文实战指南
  • 小程序毕设选题推荐:智慧农业背景下菇房环境物联网监测管理系统的设计与实现(小程序端)基于物联网技术的菇房环境智能管控小程序平台设计与实现【附源码、mysql、文档、调试+代码讲解+全bao等】
  • 腔体滤波器设计制造全流程:从电磁仿真到装配调试实战解析
  • 通过MANUS Metagloves Pro Haptic将人类手部动作映射到23自由度灵巧手
  • 【课程设计/毕业设计】基于物联网感知的菇房智能环境管理小程序应用设计与实现 SpringBoot后端驱动的微信小程序菇房物联网管控系统设计与实现【附源码、数据库、万字文档】
  • Apache SeaTunnel Zeta Engine 的 Basic Auth 是怎么工作的?
  • Python+Appium搭建Android自动化测试环境:从零到一实战指南
  • 企业出海进入系统化开发时代了吗?
  • 2026工业散热白皮书 高静压风扇化解设备高密度部署热失效难题
  • 注册商标R标怎么标注才合规?企业品牌用标必备常识
  • 关于毕业多年后再次投身研究的感触与未来展望!
  • 计算机毕业设计之基于微信小程序的上门维修系统
  • 【大二那年我C盘又红了,然后有了这篇操作系统笔记】
  • ArcObjects SDK 10.8技术栈:解决复杂地理数据可视化的专业级方案
  • 从对话框到工作流:我用开源工具把 AI Agent 工程化落地的踩坑实录
  • 从 UI 渲染者到 AI 组织者:2026 年前端工程师转型 AI 应用开发全指南
  • 爬虫转大模型:新人上手的关键步骤