自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 Flask高效数据库操作指南

Flask-SQLAlchemy数据库操作指南 摘要:Flask作为轻量级框架不限定数据库选择,但推荐使用SQLAlchemy提升开发效率。Flask-SQLAlchemy扩展封装了SQLAlchemy功能,支持MySQL等多种数据库。配置需设置SQLALCHEMY_DATABASE_URI等参数,模型类通过db.Model定义字段和关系(一对多、一对一、多对多)。核心操作包括:创建表(db.create_all)、增删改查(db.session操作)、事务管理(commit/rollback)。

2025-08-20 20:21:03 868

原创 掌握Jinja2宏与模板高级技巧

本文介绍了Jinja2模板引擎的高级功能,重点包括:1)宏的定义与使用,支持参数传递和导入;2)模板继承机制,通过base.html父模板和block块实现;3)include包含功能及其安全模式;4)对比分析了宏、继承和包含的特性差异;5)特殊模板变量如config、request的使用方法;6)get_flashed_messages处理flash消息的示例;7)高级技巧如多层继承、宏嵌套、动态包含等。文档结构清晰,示例完整,可直接应用于Flask项目开发。

2025-08-19 07:43:34 610

原创 Flask-WTF表单验证全攻略

Flask-WTF表单使用指南:介绍了常用字段类型(文本、密码、选择框等)和验证方法(必填、长度、格式验证等)。通过示例展示了完整的表单开发流程:定义表单类→视图处理→模板渲染→错误处理。特别强调CSRF保护、数据类型转换和错误显示等关键点。最后提供了安装依赖和配置安全密钥的注意事项,实现安全可靠的Web表单功能。

2025-08-19 07:12:37 491

原创 jinja2模板引擎全面解析

Jinja2模板引擎是基于Python的现代模板系统,借鉴了Django模板语法并进行了扩展。它支持沙箱执行、HTML自动转义、模板继承等特性,具有高效且安全的模板处理能力。在Flask框架中默认集成Jinja2,也可以通过pip单独安装。主要功能包括:变量渲染({{变量}})、控制语句(if/for)、过滤器(|filter)和自定义过滤器。支持多种数据类型操作,包括字符串处理、列表操作、数值计算等。开发者可以通过app.add_template_filter或装饰器方式创建自定义过滤器。

2025-08-17 12:29:30 648

原创 Flask错误处理与会话技术详解

Flask错误处理与响应机制总结:本文介绍了Flask框架中的错误处理方法和响应机制。主要内容包括:1)使用abort()函数抛出HTTP错误;2)通过errorhandler装饰器自定义错误页面(如404页面);3)响应数据的多种形式(字符串、元组、字典、JSON);4)使用make_response创建响应对象;5)设置、获取和删除Cookie;6)Session的配置和使用(包括加密、过期时间设置)。文章还提供了精美的404错误页面模板代码,展示了Flask如何处理用户友好的错误提示。

2025-08-15 20:02:14 1143

原创 Flask请求参数全解析:轻松玩转request对象

Flask请求参数处理与文件上传要点: 请求参数获取:通过request对象获取不同参数(form/POST数据、args/URL参数、values/全部参数),支持get()和getlist()方法安全获取值。 文件上传实现:使用request.files处理上传文件,需设置表单enctype为multipart/form-data,通过save()保存文件,建议使用uuid生成唯一文件名避免冲突。 消息闪现机制:配合flash()和模板中的get_flashed_messages()实现消息反馈

2025-08-14 05:43:34 668

原创 Flask入门:从零搭建Web服务器

Flask入门指南摘要: 环境配置:创建虚拟环境并安装Flask框架,通过pip install flask命令安装 基础应用:创建demo.py文件导入Flask类,使用@app.route装饰器定义路由和视图函数 配置管理:支持从配置文件或类读取配置,变量名需大写 路由配置: 支持装饰器和add_url_rule两种方式定义路由 可设置methods参数指定支持的HTTP方法 提供url_for反向解析和动态路由功能 模板渲染:使用render_template加载templates目录下的HTML模板

2025-08-13 10:45:57 743

原创 Flask vs Django:微框架与一站式对决

Flask是一个轻量级的Python Web框架,诞生于2010年,采用微内核设计,仅包含路由(Werkzeug)和模板引擎(Jinja2)两个核心组件,其他功能如数据库、表单验证等需通过扩展实现。相比Django的"一站式"解决方案,Flask更像"待装修房子",提供高度灵活性,开发者可自由组合扩展模块。常用扩展包括Flask-SQLAlchemy(数据库)、Flask-Login(认证)、Flask-RESTful(API开发)等。

2025-08-13 10:35:49 491

原创 破解滑动验证码详细讲解

本文详细讲解了如何破解某网站的滑动验证码。通过分析验证码请求流程,发现关键参数包括captchaKey、token和iv都采用MD5加密生成。通过逆向JavaScript代码,作者逐步还原了参数生成过程:1) 使用时间戳和随机字符串生成captchaKey;2) 结合多个参数生成token;3) 利用网站特定算法生成iv。最后结合Python编写爬虫程序,使用ddddocr库进行图像识别,成功模拟滑动操作并获取验证结果。文章提供了完整的Python实现代码,包括参数生成、请求发送和验证码识别等关键步骤。

2025-08-13 02:01:20 1153

原创 JS逆向实战:福建交易平台签名解析

本文详细解析了福建公共资源交易平台的数据逆向过程。通过抓包分析发现请求签名采用MD5加密算法,签名生成过程包括参数清理、排序拼接、添加固定密钥后MD5哈希。响应数据采用Base64编码和AES-128-CBC加密,需通过特定密钥和IV进行解密。文章提供了完整的Python实现代码,包括签名生成、请求发送、数据解密全过程,最终成功获取结构化交易数据。该案例展示了网站反爬机制的逆向思路和实现方法,为类似平台的逆向分析提供了参考。

2025-08-11 01:53:28 1074

原创 揭秘JS逆向:常见加密算法与破解技巧

JS逆向常见加密算法与解决方案 本文介绍了JS逆向技术及其应用场景,详细解析了4种常见加密算法(Base64、MD5、DES/AES、RSA)的原理与实现方法。JS逆向是通过分析JavaScript代码获取反爬规则的技术手段,适用于动态数据加载、加密参数生成等场景。文章具体阐述了各种加密算法的特征、用途和Python实现代码,包括Base64编码的变体处理、MD5加盐加密、DES/DES3/AES对称加密的实现差异,以及RSA非对称加密的密钥生成与加解密过程。针对每种算法都提供了详细的Python代码示例

2025-08-11 01:34:06 1300

原创 爬虫攻防战:反爬与反反爬全解析

本文总结了网络爬虫与反爬技术的常见手段及应对策略。服务器实施反爬主要因爬虫流量消耗资源、数据被批量抓取导致商业损失,尤其在3月学术论文高峰期更为明显。常见反爬手段包括:身份识别(Headers验证、Cookie检查)、行为特征(请求频率限制、陷阱URL)和数据加密(自定义字体、CSS偏移)。应对方案包括伪装请求头、使用代理IP池、模拟浏览器操作和解析加密字体。反爬技术需平衡拦截率与误伤率,核心目标是增加爬虫开发成本。文章还提供了Python代码示例,展示如何处理自定义字体等高级反爬措施。

2025-08-09 21:24:02 1747

原创 DrissionPage实战案例:小红书旅游数据爬取

本文介绍了使用DrissionPage爬取小红书旅游数据的实战案例。通过自动化浏览器操作和数据包监听,实现笔记标题、图片数量、点赞数、收藏数、评论数等关键数据的抓取,并下载笔记中的所有图片。技术栈包括DrissionPage、Requests、正则表达式和CSV模块。代码详细展示了从页面加载、数据监听、滚动加载到数据解析、存储图片的全流程,并处理了异常情况和反爬措施。该方案可为网络爬虫开发者提供小红书数据采集的参考实现。

2025-08-07 18:54:41 172

原创 DrissionPage自动化:高效Web操作新选择

DrissionPage是一款现代化Python Web自动化库,融合了浏览器自动化和网络请求功能,兼具Selenium和Requests的优点。核心优势包括:双模式协同(浏览器/请求模式)、8种高效元素定位方式、智能等待机制、网络监听功能和低资源占用(比Selenium节省40%以上内存)。支持无缝切换工作模式,内置反检测机制能绕过多数自动化检测系统。其简洁API可减少30-50%代码量,执行速度更快(测试显示7.2秒vs Selenium的12.8秒),特别适合需要处理JavaScript渲染、复杂验证

2025-08-07 18:50:07 1268

原创 Selenium自动化:轻松实现网页操控

Selenium自动化测试与数据爬取摘要 Selenium是一个强大的Web自动化工具,主要用于Web应用测试和动态数据抓取。它支持多种浏览器,通过WebDriver控制浏览器行为,提供多种元素定位方式(ID、XPath、CSS选择器等)。 核心功能: 测试自动化:减少人工测试工作量,支持跨浏览器测试 数据抓取:获取JavaScript动态加载的内容 用户交互模拟:实现点击、输入、滚动等复杂操作 使用场景: 动态内容加载页面 复杂用户交互需求 频繁回归测试 基本流程: 安装Selenium库和浏览器驱动

2025-08-02 22:43:03 1484

原创 JSONPATH实战案例:爬取异步加载的网站

本文介绍了一个使用JSONPATH爬取腾讯网异步加载数据的Python实战案例。通过requests库发送POST请求获取JSON数据,利用jsonpath提取新闻标题、链接和来源信息,并使用openpyxl将数据保存到Excel文件。代码实现了分页爬取(1-11页)、异常处理(缺失来源情况)、实时进度显示和即时数据保存等功能。关键步骤包括:创建Excel工作簿、设置请求头伪装浏览器、循环翻页获取数据、提取并处理可能缺失的数据字段、将每页数据实时写入Excel。该方案能有效爬取异步加载的网页内容

2025-07-30 01:21:45 238

原创 JSONPath进阶实战:高效查询技巧全解析

JSONPath是一种用于查询JSON数据的强大工具,类似XPath在XML中的作用。本文全面解析JSONPath的核心语法与应用技巧,涵盖基础操作(根节点选择、子节点访问、通配符)、数组处理(索引切片、递归查询)、高级过滤(条件组合、正则匹配)以及函数扩展(长度统计、极值计算)。通过电商商品筛选、企业员工数据查询等实战案例,演示如何精确提取数据,并对比不同实现库(如jsonpath-ng)的特性差异。文章特别强调查询优化建议和常见陷阱处理,如大小写敏感、特殊字符转义等问题,为开发者提供完整JSONPath

2025-07-29 01:08:51 959

原创 JavaScript对象与Math对象完全指南

本文全面介绍了JavaScript对象和Math对象的核心用法。对象作为数据集合,包含属性(特征)和方法(功能),可通过字面量或动态方式创建。文章展示了对象的基本操作、遍历方法及实际应用场景。Math对象部分详细解析了随机数生成、取整方法、极值计算、幂运算和三角函数等核心功能,并提供了验证码生成、价格格式化和游戏开发等实用案例。关键知识点包括对象属性/方法、动态成员及各种Math计算方法,最后给出了优先使用点表示法、合理处理随机数和精确计算等最佳实践建议。

2025-07-28 18:17:16 335

原创 掌握JavaScript函数封装与作用域

本文介绍了JavaScript函数的基本概念和使用方法。主要内容包括:1)函数的封装意义,通过函数声明实现代码复用;2)函数的基本语法结构(关键字、函数名、参数等);3)函数调用方式;4)参数传递(形参和实参);5)返回值使用return关键字;6)作用域规则(全局/局部作用域,变量查找顺序);7)匿名函数和立即执行函数的用法。文中通过多个代码示例演示了如何声明、调用函数,处理参数和返回值,以及理解作用域规则。这些知识是JavaScript编程的基础核心内容。

2025-07-26 23:36:41 869

原创 Python爬虫实战:诗词名句网《三国演义》全集

本文介绍了使用BeautifulSoup爬取"诗词名句网"上《三国演义》全集的实战案例。通过requests获取网页内容,BeautifulSoup解析HTML结构,提取章节名称和URL,并对特殊符号进行处理确保文件名安全。程序动态创建目录,循环获取各章节内容,去除HTML标签后保存为独立文本文件。实现过程包括:伪装浏览器请求、URL拼接、内容提取、文件存储和进度反馈。该案例展示了网络爬虫的基本流程,重点演示了BeautifulSoup在网页解析中的实际应用。

2025-07-26 21:34:12 352

原创 BeautifulSoup高效解析网页数据

本文介绍了Python网页解析库BeautifulSoup的基本使用方法。BeautifulSoup相比lxml更易于使用,支持HTML/XML文档解析。文章详细讲解了BeautifulSoup的安装方法、节点定位技巧(包括find、find_all和select方法)以及节点信息获取方式(如文本内容和属性值)。通过示例代码演示了如何定位标签、获取属性和文本内容,特别推荐使用select方法和get_text()函数。虽然BeautifulSoup效率略低于lxml,但其人性化的接口设计使其成为开发者首选的

2025-07-26 00:02:35 943

原创 一键永久切换pip国内源

这篇教程详细介绍了Windows系统永久更换pip源的步骤:1)打开AppData目录;2)创建pip文件夹;3)新建pip.ini配置文件;4)编辑配置文件内容(推荐清华源);5)验证配置是否生效;6)测试下载速度。通过修改pip源到国内镜像(如清华、阿里云等),可显著提升Python包下载速度至1-5MB/s。教程包含详细的路径指引和配置示例,确保用户能顺利完成设置。

2025-07-25 18:57:49 437

原创 XPath爬虫入门:从豆瓣电影实战开始

本文介绍了XPath语法及其在网页数据提取中的应用。首先讲解了XPath的基本概念,包括节点关系、路径表达式(绝对路径、相对路径)和基础语法(text()、@属性选择等)。然后详细说明了节点修饰语法,如通过属性值、下标等筛选特定节点。文章还演示了如何使用lxml模块解析HTML,通过etree.HTML()和xpath()方法提取数据,并提供了三种不同的数据提取方法示例。最后比较了底层解析库lxml.etree与高层工具parsel的特点,前者提供完整的DOM操作,后者则更专注于爬虫场景的数据抽取。

2025-07-24 17:57:31 1870

原创 Chrome禁用V2扩展?教你继续用uBlockOrigin

谷歌计划2024年禁用ManifestV2扩展,强制升级至ManifestV3(权限大幅缩减),影响uBlockOrigin等扩展功能。本文提供Windows系统通过修改注册表强制Chrome138及以下版本继续支持V2扩展的方法:在注册表HKEY_LOCAL_MACHINE\SOFTWARE\Policies\下创建Google/Chrome项,新建DWORD32值ExtensionManifestV2Availability并设为2,最后在chrome://policy/重新加载策略。

2025-07-23 23:47:36 326

原创 爬取某瓣电影Top250实战案例

本文介绍了一个爬取某瓣电影Top250的Python实战案例。通过requests库发送HTTP请求,使用正则表达式提取电影名称、评分(≥9.4)和经典台词等信息,并利用openpyxl将数据保存至Excel。代码实现了分页处理(1-10页)、请求头伪装、数据过滤和进度反馈功能,最终生成包含高评分电影信息的表格文件。该案例演示了完整的网络爬虫开发流程,包括URL构造、页面解析、数据筛选和存储等关键环节。

2025-07-23 22:25:36 297

原创 某瓣图书爬虫实战:10页新书速递一键抓取

【摘要】本文介绍了一个某瓣新书爬虫的实现方案,通过Python爬取某瓣最新图书列表1-10页数据。主要功能包括:1)分页循环处理每页URL;2)模拟浏览器请求获取页面;3)使用正则表达式提取图书封面图、详情链接、标题和作者信息;4)将文本数据保存到txt文件;5)自动创建图片目录并按书名下载封面JPG图片;6)控制台输出每本图书的详细信息并用分隔线区分。该爬虫采用requests库发送请求,re模块解析数据,os模块管理文件系统,实现了一个完整的图书信息采集系统。

2025-07-23 17:59:21 178

原创 爬取某某云榜单歌曲实战案例

摘要:本文介绍了如何爬取网易云音乐榜单歌曲的实战案例。通过分析URL结构确定榜单ID,使用数据包抓取技术获取真实歌曲数据地址,并对比响应源码与渲染代码差异。通过正则表达式提取歌曲ID和名称,构建下载链接。代码实现了用户选择榜单ID和下载数量的功能,自动创建分类文件夹并保存为MP3文件。使用requests库发送请求,处理特殊字符命名问题,最终将歌曲下载至本地。该案例展示了从分析到实现的全过程,适用于各类音乐榜单的批量下载需求。

2025-07-23 00:03:12 511

原创 正则表达式

Python正则表达式是处理文本数据的强大工具,通过re模块实现字符串匹配、查找和替换。摘要要点:1. 正则表达式由普通字符和元字符组成,用于模式匹配;2. re模块提供findall()、search()、match()、sub()等核心函数;3. 常用匹配符号包括.(任意字符)、\d(数字)、\w(非特殊字符)等;4. 量词(*、+、?、{m,n})控制字符出现次数;5. 分组功能(|、(ab)、\num)实现复杂匹配逻辑。正则表达式适用于数据提取、验证和清洗,但不适合处理HTML等结构化数据。

2025-07-22 18:25:30 808

原创 JavaScript循环与数组实战技巧

本文摘要: JavaScript第三天学习笔记主要包含以下内容: 分支语句对比:详细比较if多分支与switch语句的异同点,包括适用场景和效率差异 循环语句:系统讲解for循环的语法结构、执行流程及应用场景,重点说明循环三要素(起始值、终止条件、变化量) 数组操作:介绍数组的基本概念、声明访问方式及常用操作方法(push/pop/shift/unshift等) 综合案例:通过柱状图案例演示数组与循环的配合使用 注意事项:特别强调数据类型判断、循环控制(break/continue)及嵌套循环等关键点

2025-07-21 22:36:03 933

原创 掌握JavaScript流程控制,轻松编写ATM程序

本文介绍了JavaScript的基础知识,重点讲解了运算符和流程控制语句。主要内容包括:算术运算符、赋值运算符、自增/自减运算符的使用;比较运算符和逻辑运算符的应用;分支语句(if、switch)的语法和使用场景;循环语句(while、for)的基本用法及中断方法;最后通过ATM存取款机案例综合运用了这些知识点。文章详细说明了各种运算符的运算规则和注意事项,并提供了大量代码示例帮助理解。

2025-07-20 21:15:13 920

原创 JavaScript入门:变量、运算符与数据类型基础

本文介绍了JavaScript基础语法第1天的主要内容:1. JavaScript的两种引入方式(内联和外部文件)2. 注释语法(单行//和多行/* */)3. 输入输出方法(alert、prompt、document.write)4. 变量的声明与赋值(let/var关键字)5. 常量声明(const)6. 数据类型(数值、字符串、布尔、undefined、null)7. 类型转换(隐式转换和Number/parseInt/parseFloat显式转换)8. 模板字符串的使用方法文章通过大量代码示例,详细

2025-07-19 19:41:02 717

原创 爬虫day01

我们使用请求头的同时不仅仅将自己伪装起来了,降低了被封IP地址的风险,而且还可以拿到更多的数据。

2025-07-19 09:00:00 2184

原创 Pillow 使用指南与 Django 验证码集成

Pillow 是 Python 的图像处理库,是 PIL (Python Imaging Library) 的分支,提供广泛的图像处理功能:图像创建、打开、保存图像处理(缩放、裁剪、旋转)图像增强(滤镜、色彩调整)图像绘制(形状、文本)

2025-07-18 00:44:10 226

原创 HTML 协议详解

现代网页通常需 $10-100$ 次 HTTP 请求完成完整加载。,这是用于传输 HTML 文档的核心协议。

2025-07-17 22:33:39 453

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除