- 博客(162)
- 收藏
- 关注
原创 Playwright之脱离元素,页面操作大全!
Playwright 页面操作精要 本文系统梳理 Playwright 中无需依赖元素定位的高频页面操作,包括页面滚动、坐标点击等核心功能。针对现代网页中的 Canvas 交互、动态渲染等特殊场景,提供脱离传统 DOM 定位的解决方案。 关键内容: 页面滚动控制:通过 mouse.wheel() 实现像素级滚动,或使用 evaluate() 执行 JS 滚动脚本,支持绝对/相对位置滚动和懒加载触发 坐标点击技术:详解 mouse.click() 实现无 DOM 交互,提供坐标定位技巧(开发者工具取点、截图分
2025-08-27 20:38:37
738
原创 Playwright之学会等待,最强等待操作指南!
Playwright 提供了全面的等待机制,包括页面加载状态等待、元素等待和自定义条件等待三种核心类型。页面加载状态等待通过 wait_for_load_state() 实现四种状态检测:DOM内容加载完成、页面完全加载、网络空闲和文档提交。元素等待则通过 Locator 对象的方法实现精准等待,其中自动等待机制在执行操作时智能判断元素状态。Playwright 推荐的自动等待方式能大幅提高脚本稳定性,适用于现代动态网页场景。合理运用这些等待策略,可显著提升自动化测试和爬虫的成功率。
2025-08-27 20:30:21
671
原创 Playwright之codegen操作本地浏览器详解
摘要: Playwright 通过浏览器驱动协议支持本地浏览器自动化,可使用 chromium.launch() 指定本地浏览器路径。其 codegen 工具能录制操作并生成自动化脚本,支持多语言(JS/TS/Python等)和主流浏览器。常用参数包括 --browser 指定浏览器类型、--output 保存脚本、--target 切换编程语言。优化技巧包括结合录制与手动编码、使用严格选择器。该组合显著提升前端测试、爬虫等场景的开发效率,降低调试成本。
2025-08-15 16:10:46
876
原创 Python 基础总结之`assert` 的使用详解
Python中的assert语句是一个实用的调试工具,用于验证条件是否成立。基本语法为assert condition, message,当条件为False时会抛出AssertionError。它常用于检查函数输入、验证逻辑条件和测试预期行为,但在生产环境中应避免使用,因为优化模式下会被移除且不适合关键业务校验。虽然单元测试推荐使用专用断言方法,但assert在快速调试时仍很有用。注意断言消息要明确,且仅适用于调试阶段。合理使用断言可以增强代码健壮性,但不能替代业务逻辑校验。
2025-08-13 17:16:38
263
原创 Python使用总结之Linux部署python3环境
本文介绍在CentOS 8.2上部署Python 3.12.4环境的自动化脚本。主要内容包括:1)检查root权限并更新系统依赖;2)安装编译工具包;3)从国内镜像下载Python源码;4)配置编译选项并优化安装;5)创建软连接方便调用;6)验证安装结果。脚本提供完整的安装流程,处理了常见问题如zlib依赖检测,并包含清理步骤。安装完成后可执行python3.12和pip3.12命令,适合需要快速部署Python环境的生产场景。
2025-06-12 18:41:39
777
原创 Python使用总结之Mac安装docker并配置wechaty
本文介绍了在Mac上安装Docker并配置Wechaty的完整步骤:1)下载安装Docker Desktop;2)验证安装;3)可选配置国内镜像加速器;4)拉取Wechaty镜像;5)测试运行容器。重点包括正确选择硬件适配版本、配置镜像加速器提高下载速度,以及通过docker run命令进入Wechaty容器测试环境。整个过程涵盖了从基础安装到实际应用的完整流程。
2025-06-05 15:37:07
563
原创 Python使用总结之基于Python的Wechaty使用步骤
摘要:本文介绍了使用Python开发微信机器人的Wechaty框架。内容包括Wechaty的功能特点、环境准备步骤、如何获取puppet token、编写基础机器人代码示例(如消息监听和自动回复),以及通过环境变量或Docker运行的方法。文章还提供了常见问题解决方案,并推荐进一步学习资源。Wechaty作为跨平台SDK,可帮助开发者快速构建微信智能机器人,无需逆向协议即可实现自动回复等业务逻辑。
2025-06-05 15:27:02
962
原创 机器学习之深入理解机器学习常见算法:原理、公式与应用
本文系统介绍了机器学习的三大类算法及其核心原理。监督学习部分涵盖线性回归、逻辑回归、SVM、KNN、决策树和随机森林等算法,详细解析了各自的目标函数和优化方法。无监督学习重点介绍K均值聚类和PCA降维算法的工作原理。深度学习部分阐述了神经网络的基本结构,以及CNN和RNN在图像和序列处理中的特殊设计。文章最后总结了不同算法类型的适用场景,强调应根据数据特征和任务需求选择合适的模型。全文提供了严谨的数学公式表达,为理解机器学习算法奠定了理论基础。
2025-06-04 08:50:00
1201
原创 Playwright之自定义浏览器目录访问出错:BrowserType.launch: Executable doesn‘t exist
在使用playwright进行浏览器自动化的时候,配置了自定义的浏览器目录,当按照自定义的浏览器目录启动浏览器进行操作时,访问的浏览器版本和下载的版本不一致。出现错误:BrowserType.launch: Executable doesn’t exist。
2025-04-07 17:38:08
1821
原创 Python使用总结之Flask构建文件服务器,通过网络地址访问本地文件
是 Flask 中灵活且安全的文件服务方案,适用于用户上传文件、动态生成内容等场景。通过合理配置和安全增强,可以在生产环境中稳定运行。结合 Nginx 等反向代理服务器,能进一步提升性能和安全性。示例代码仓库正确使用提供文件服务防范常见的安全漏洞(目录遍历、文件类型攻击)优化文件传输性能和用户体验。
2025-03-18 15:05:11
1075
原创 Playwright:用“网络侦探“的视角玩转接口数据获取
通过本文的探索,相信你已经掌握了Playwright在接口数据获取方面的强大能力。这个框架就像给你的浏览器装上了CT扫描仪,让所有网络活动都变得透明可见。无论是简单的数据抓取,还是复杂的接口分析,Playwright都能提供优雅的解决方案。未来,随着Web技术的演进,Playwright也在持续进化。定期查看官方文档(https://playwright.dev)参与GitHub社区讨论尝试异步API提升性能探索移动端调试功能。
2025-03-13 09:32:07
1828
原创 Python使用总结之深入理解 asyncio.Future——Python 异步编程的核心基石
理解不仅是对 Python 异步机制的深度认知,更是打开并发编程新维度的大门。它如同量子物理中的波函数,既是状态的载体,也是操作的手段。在高级框架封装日益普及的今天,掌握这一底层工具,将使开发者具备解决复杂异步问题的能力,在分布式系统、高并发服务等场景中游刃有余。
2025-03-12 18:18:43
1091
原创 Python使用总结之Python文本转语音引擎:pyttsx3完全指南
pyttsx3是一个跨平台的Python文本转语音转换库,它可以在不需要网络连接的情况下工作。该库使用你系统上已安装的TTS引擎,如Windows上的SAPI5、macOS上的NSS和Linux上的espeak。pyttsx3是一个功能强大且易于使用的Python文本转语音库,它提供了语音合成的核心功能,同时保持了简单的API。它的离线特性使其成为需要TTS功能但不想依赖网络服务的应用的理想选择。通过本教程,你应该已经掌握了pyttsx3的基本用法和一些高级技巧。
2025-02-28 17:09:41
3804
3
原创 Linux总结之CentOS Stream 9安装mysql8.0实操安装成功记录
由于网上很多的mysql8.0安装教程都是老版本或者安装过程记录有问题,导致经常安装到一半需要删除重新安装。所以将成功的实操安装过程记录一下,方面后面查阅,大家还有问题的可以在此讨论。
2024-12-28 15:30:24
1510
原创 Python使用总结之Robyn框架介绍与对比
特性RobynFlaskFastAPIDjango性能极高中等高中等学习成本低低中等高异步支持原生插件原生有限生态系统新兴成熟良好丰富Robyn作为新兴框架,展现出令人期待的性能和简洁性。尽管生态系统还在发展中,但其独特的架构设计值得开发者持续关注和尝试。你对这篇技术博客有什么看法?我可以根据你的反馈进一步调整和完善内容。
2024-12-14 08:51:01
1119
原创 Python基础总结之常用的ORM框架介绍
如果需要强大的功能和灵活性,选择SQLAlchemy。如果是 Django 项目,直接使用Django ORM。如果是异步项目,选择或SQLModel。如果是小型项目或追求简单,选择Peewee或Pony ORM。你可以根据项目的具体需求、数据库类型和开发框架选择适合的 ORM 框架。
2024-11-21 09:12:25
2362
原创 PyQt5之信号与槽
信号是在特定事件发生时发出的通知。按钮被点击文本框内容改变滑块值变化窗口关闭槽是响应信号的函数或方法。PyQt5内置的槽函数Python的普通函数lambda表达式类方法btn = QPushButton('点击我', self)btn.clicked.connect(self.buttonClicked) # 连接到自定义槽函数print('按钮被点击了!')# 定义自定义信号btn = QPushButton('发射信号', self)
2024-11-18 16:16:43
567
原创 Playwright之自定义浏览器的下载和启动路径
安装到指定目录运行时指定路径使用在代码中显式指定。永久性配置设置环境变量,自动应用自定义路径。
2024-11-18 16:14:49
5393
原创 PyQt5之布局介绍与演示
PyQt5的布局系统非常强大和灵活,掌握这些布局方式可以帮助我们创建出专业的用户界面。在实际开发中,经常需要组合使用多种布局来实现复杂的界面设计。合理使用布局不仅可以提高开发效率,还能确保应用程序在不同分辨率下都有良好的显示效果。在设计界面时,先在纸上画出布局草图从大到小规划布局结构注意控件的对齐和间距多测试窗口缩放效果善用布局的高级特性来优化界面。
2024-11-16 13:53:40
717
原创 PyQt5之基础组件介绍与使用
本文介绍了PyQt5中最常用的基础组件及其基本使用方法。这些组件为构建功能丰富的GUI应用程序提供了基础。在实际开发中,您可以根据需求组合使用这些组件,并通过样式表(StyleSheet)、布局管理器和信号槽机制来创建更复杂的用户界面。深入学习Qt的信号槽机制掌握更多高级组件的使用学习Qt样式表的编写理解Qt的事件系统熟练运用各种布局管理器。
2024-11-16 13:49:47
371
原创 Python使用总结之如何去除图片的水印?
以上就是使用 Python 去除图片水印的一个基本方法。当然,实际情况可能会更加复杂,水印可能是透明的,或者与背景颜色差异不大,这时需要使用更加复杂的图像处理算法,如边缘检测、图像修复等方法来处理水印。对于更高精度的水印去除,建议使用专门的图像处理软件,或使用深度学习方法来检测和去除水印。通过 Python,我们可以简单地处理一些基础的水印去除任务,但要注意,有些水印可能涉及版权问题,所以在处理图片时,请确保遵守相关的法律法规。
2024-11-14 20:36:59
1132
原创 Python使用总结之py-docx将word文件中的图片保存,并将内容返回
使用py-docx读取word文档的内容,其中包含标题、文本和图片等信息。该方法将标题和内容返回,并将文件中的图片保存到指定的文件夹中。
2024-09-21 15:18:42
817
原创 Python使用总结之FastAPI高级功能探索:数据库集成与依赖注入
FastAPI不仅提供了极简的API开发体验,还通过依赖注入和数据库集成等高级功能,帮助开发者更高效地管理复杂应用中的共享资源和事务。通过利用这些特性,你可以构建出高性能、易维护的现代Web应用。FastAPI的这些高级功能使得它在处理复杂业务逻辑时得心应手。无论是数据库集成、依赖注入,还是异步任务管理,FastAPI都提供了简洁、优雅的解决方案。如果你的项目需要高扩展性、性能优化以及清晰的依赖管理,那么FastAPI无疑是一个理想的选择。
2024-09-21 11:02:40
961
原创 Python使用总结之FastAPI使用和配置详解(一)
FastAPI凭借其现代化设计、类型安全、高性能以及易于配置的特性,已经成为Python Web框架中的佼佼者。无论是自动生成文档、异步支持,还是强大的数据验证功能,都为开发者带来了极大的便利。通过本篇文章的介绍,你可以快速上手FastAPI并开始构建高效的API服务。下一步,你可以进一步探索FastAPI的高级功能,如数据库集成、依赖注入等,打造更加复杂的Web应用和API服务。
2024-09-21 11:00:59
1440
原创 Python使用总结之FastAPI和Flask框架对比
1. FastAPIFastAPI是一个现代、快速的Web框架,基于Python的类型提示构建。它的主要目标是提供高性能、快速开发体验,并支持异步编程。它特别适合开发需要高吞吐量、低延迟的API服务。2. FlaskFlask是一个轻量级的微框架,以其灵活、简单著称。由于没有内置太多的默认配置或依赖,开发者可以根据项目需求自由选择组件,适合快速开发小型Web应用或API服务。FastAPI凭借其高性能、异步支持和现代化的开发体验,非常适合构建复杂、数据密集型的API服务。Flask。
2024-09-21 10:57:51
3696
原创 Python基础总结之Python中常见的迭代器介绍
你可以通过创建包含__iter__()和__next__()方法的类来自定义迭代器。print(num)
2024-09-04 09:22:22
768
原创 Python基础总结之迭代器的应用场景
这种方式特别适合需要延迟计算的场景,比如生成无限序列,或者当你只需要部分数据时,避免了不必要的计算。迭代器允许你按需逐一获取元素,而不是一次性加载所有数据,从而减少内存消耗。:有时候,你需要自定义迭代行为,迭代器使你能够控制迭代的逻辑,比如定义步长、跳过特定元素、甚至是遍历一个复杂的数据结构。:迭代器与生成器结合使用时(例如生成器表达式),可以进一步优化内存使用,因为生成器不会一次性生成所有数据,而是按需生成。循环即可满足大多数需求,但在处理复杂、动态或大型数据时,迭代器能够提供更高效、更灵活的解决方案。
2024-09-04 09:20:55
492
原创 Python使用总结之Flask-SocketIO介绍
Python使用总结之Flask-SocketIO介绍一、Flask-SocketIO简介Flask-SocketIO 是一个基于 Flask 的扩展库,用于在 Flask 应用中实现 WebSocket 通信。WebSocket 是一种双向通信协议,允许服务器和客户端之间在不重新建立连接的情况下进行实时数据交换。这种能力使得 WebSocket 非常适合用于构建实时聊天应用、在线游戏、实时数据推送等需要高频率数据传输的应用。Flask-SocketIO 通过集成了几个底层库,如 gevent、e
2024-08-30 15:31:37
1538
原创 DrissionPage、Selenium和Playwright自动化框架对比分析
特性SeleniumPlaywright易用性高中高性能中低高生态系统小但成长中成熟快速成长浏览器支持主要支持Chrome广泛广泛现代Web应用支持中低高社区支持中(主要中文)高中高多语言支持仅Python广泛较广泛学习曲线平缓中等中等到陡峭。
2024-08-16 17:21:46
5481
1
原创 PyAibote使用总结之入门介绍
pyaibote是一个功能强大且易于使用的自动化测试框架。通过本文的介绍,您应该对pyaibote有了基本的了解,并能够开始编写简单的自动化脚本。随着您对框架的深入了解,您将能够创建更复杂、更强大的自动化测试方案。记住,自动化测试是一个强大的工具,但也需要谨慎使用。始终确保您的自动化脚本在可控的环境中运行,并遵守相关的法律和道德准则。
2024-08-16 17:08:06
968
原创 Python使用总结之BeautifulSoup定位方式详解
在进行网页爬虫时,定位页面元素是一个关键步骤。BeautifulSoup 作为 Python 中常用的网页解析库,提供了多种灵活的定位方式。本文将详细介绍如何使用 BeautifulSoup 进行各种元素定位操作,以帮助您更高效地进行网页数据抓取。BeautifulSoup 是一个用于解析 HTML 和 XML 文档的库。它能以 Python 对象的方式提取文档中的数据,使得处理网页内容变得更加简便。安装 BeautifulSoup 和 lxml导入库并解析网页内容。
2024-08-05 15:44:04
1364
原创 Python使用总结之如何进行视频下载(基于yt-dlp)
yt-dlp是youtube-dl的一个分支,它提供了更多功能和更好的性能。这个库不仅支持YouTube,还支持数百个其他视频网站。支持多种视频平台高度可定制的下载选项支持字幕下载支持视频格式转换性能优化,下载速度更快。
2024-08-02 18:34:56
2428
原创 WEB-UI自动化测试主流框架对比(附封装方案)
通过这种封装,您可以提供一个易用、可维护且可扩展的测试框架,同时保留了底层Selenium的强大功能。这将大大减少编写和维护测试用例的时间,提高团队的效率。考虑到各个框架的优缺点,以及易用性和可扩展性,我建议基于Selenium或WebdriverIO进行封装。
2024-07-29 15:13:08
1365
原创 Python使用总结之pyinstaller打包spec文件详解
是一个将Python应用程序打包成独立可执行文件的工具,它支持Windows、Mac OS X和Linux等多个平台。打包后的程序可以在目标系统上运行而无需Python解释器。假设我们有一个Python脚本example.pyexe = EXE(pyz,a.scripts,a.datas,[],upx=True,exe,a.datas,upx=True,在这个spec文件中,我们指定了额外的数据文件和隐藏导入模块,打包后的可执行文件名为。通过本文的介绍,我们详细了解了的spec。
2024-07-29 09:06:12
5542
1
原创 Python使用总结之FrozenJSON使用详解
FrozenJSON是一个自定义的Python类,它将JSON数据转换为一个不可变(frozen)的对象,允许我们使用属性表示法来访问数据,而不是使用字典的键值对访问方式。这使得代码更加清晰和易读。
2024-07-26 17:11:04
598
原创 PyQt5之PyQt5 vs PySide6: 选择Python GUI框架的对比分析
PyQt5: 由Riverbank Computing开发,是Qt框架的Python绑定,已存在多年。PySide6: 由Qt公司开发,是Qt for Python项目的一部分,是较新的选择。
2024-07-26 16:04:27
3453
原创 Python使用总结之exe启动后,提示RuntimeError: input(): lost sys.stdin
例如,如果您的应用程序主要是 GUI 但偶尔需要输入,您可能会选择方法 2 或 3。如果您的应用程序可以完全避免运行时输入,方法 4 或 5 可能更合适。通过上面分析可以得知,又要无窗口,又要通过窗口输入信息,所以他就会报错RuntimeError: input(): lost sys.stdin(别太为难程序了->
2024-07-26 15:05:24
1447
原创 Python使用总结之pyinstaller打包后,exe无法启动,提示not found module XXX
pyinstaller打包后,exe无法启动,提示not found module XXX
2024-07-26 14:56:49
904
原创 Python使用总结之pandas如何读取excel的某行或者某列
使用 pandas 读取特定行或列的数据非常方便,常用的方法包括直接使用列名、loc和iloc方法。通过这些方法,我们可以灵活地访问和操作 DataFrame 中的任意部分数据。希望这些内容对您有所帮助,如果您有任何问题或建议,欢迎在评论区留言!
2024-07-26 14:38:43
4693
原创 Python使用总结之pandas操作excel
在数据处理和分析的过程中,Excel 是最常见的工具之一。Python 的 pandas 库提供了强大的功能,可以轻松地操作 Excel 数据。本文将介绍如何使用 pandas 处理 Excel 数据的各种方法和技巧。pandas 提供了强大且灵活的功能,可以方便地操作和处理 Excel 数据。通过掌握这些方法和技巧,我们可以更高效地进行数据分析和处理。如果您对更多的 pandas 功能感兴趣,可以参考pandas 官方文档。希望这篇博客能帮助您更好地使用 pandas 操作 Excel 数据。
2024-07-26 14:34:34
1090
毕业答辩PPT.zip
2024-08-23
Swift语言教程.docx
2024-08-23
Rust语言语法介绍.docx
2024-08-23
Linux常用命令教程.docx
2024-08-23
计算机类专业课考研习题文档.docx
2024-08-23
git使用教程.docx
2024-08-23
测试报告模板.docx
2024-08-23
入门级Web开发教程.docx
2024-08-23
智能车竞赛介绍.docx
2024-07-05
Matlab语言教程.docx
2024-07-05
Fortran语言教程.docx
2024-07-05
(大学生创新创业训练计划)经验分享
2024-07-05
MongoDB的Linux安装、基本操作.docx
2024-07-05
JAVA自学指南.docx
2024-07-03
《maven下载、安装、配置与使用教程》
2024-07-04
网络安全相关的密码学、网络攻防、安全分析等教程.docx
2024-07-04
ROS安装配置与语法介绍文档
2024-07-04
汇编语言自学指南.docx
2024-07-03
人工智能问答搭建基于智普清言.py
2024-07-03
html星空代码.html
2024-07-03
【Dify Hackathon安装部署】零基础小白教程:从环境搭建到项目启动全流程指南
2025-07-29
dbeaver-ce-25.1.3-x86-64-setup.exe
2025-07-29
机器学习介绍.docx
2024-08-26
信息安全相关资源.docx
2024-08-26
python爬虫基础知识.docx
2024-08-26
不同版本yolo介绍.docx
2024-08-26
CV领域识别与处理资源.docx
2024-08-26
Delphi教程.docx
2024-08-26
Ruby语言教程.docx
2024-08-26
Web3开发教程.docx
2024-08-26
Scratch语言教程.docx
2024-08-26
PHP语言教程.docx
2024-08-26
C#语言教程.docx
2024-08-26
JavaScript语言教程.docx
2024-08-26
Golang开发基础介绍.docx
2024-08-26
神经网络介绍.docx
2024-08-26
聚类算法实现.docx
2024-08-26
Object-C语言教程.docx
2024-08-23
Fortran语言教程详细版.docx
2024-08-23
Kotlin语言教程.docx
2024-08-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人