Python应用开发学习
文章平均质量分 94
此专栏归纳本人写的一些Python应用开发方面的日志。
武陵悭臾
一直爱好摄影和旅游,最近几年又对编程、3D建模及动画感兴趣了,正在努力学习中。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Python应用开发学习:Pygame中实现切换开关及鼠标拖动连续填充功能
本文记录了使用Pygame开发趣味数独游戏时,借助AI工具实现切换开关和鼠标拖动连续填充功能的过程。作者先通过DeepSeek实现了切换开关功能,解决了特殊字符显示问题;随后添加了鼠标拖动连续填充功能,并处理了PyCharm的类型检查警告。文章展示了AI辅助开发的实用价值,最终代码实现了在10×10棋盘上通过切换开关选择填充叉或方块,并支持鼠标拖动连续填充的功能,为游戏开发提供了完整解决方案。原创 2025-11-10 23:27:11 · 757 阅读 · 0 评论 -
Python应用开发学习: Pygame 中实现数字水平靠右对齐和垂直靠底对齐
本文记录了作者使用Pygame开发趣味数独游戏界面的过程。作者在开发中遇到数字对齐问题:需要实现水平靠右和垂直靠下两种特殊对齐方式。借助AI工具反复调试后,最终实现了符合需求的函数。文章详细描述了解决思路和调试过程,包括7次与AI交互修改代码的经历,最终成功实现了数字在格子外特殊对齐的效果,并添加了背景色功能。文末附有完整可运行的示例代码,展示了游戏界面的最终实现效果。原创 2025-11-07 21:59:15 · 1117 阅读 · 1 评论 -
Python应用开发学习:让DeepSeek写个下载电子邮件的小工具
一周前,我发了一篇《Python应用开发学习:做一个邮件发送工具,实现带附件及延时发送》的日志,记录了我借助DeepSeek做了一个发送电子邮件的小工具,方便我在公司内部网络进行ip限制的情况下,能够通过QQ邮箱的stmp服务发送邮件。但还没解决在公司内网下载QQ、163、新浪等邮箱里的邮件的问题。这次我又把问题抛给DeepSeek,让它帮我写代码,效率高了很多。虽然在测试时出现了一些问题,最终目标只实现了一部分,但总比啥都不能做要强。原创 2025-07-01 01:19:21 · 1002 阅读 · 0 评论 -
Python应用开发学习:做一个邮件发送工具,实现带附件及延时发送
这几天,我学习并尝试了开发一个简单的邮件发送工具。开发这个小工具是因为我公司的内部网络有访问限制,哪怕是常用的一些邮箱网站也不能正常访问,虽然有公司的专用邮件系统可以发送邮件,但这样的限制还是让人不爽。我希望通过这个小工具能够实现我发送软件的自由。这个软件的开发借助了DeepSeek,大大提升了开发效率,我是通过qq邮箱的smtp服务来实现发送邮件的,需要先获取到qq邮箱的授权码才能正常使用。最后放上DeepSeek生成的示例代码供参考,此段代码包含了立即发送邮件和延迟发送邮件两个主要的功能模块...原创 2025-06-24 10:37:17 · 942 阅读 · 0 评论 -
网络爬虫学习:借助DeepSeek完善爬虫软件,实现模拟鼠标右键点击,将链接另存为本地文件
最近几个月里,我一直在学习网络爬虫方面的知识,每有收获都会将所得整理成文发布,不知不觉已经发了7篇日志了:这两天,我又解决了模拟鼠标右键点击的问题,特记录以备忘。原创 2025-02-20 00:07:43 · 4916 阅读 · 8 评论 -
网络爬虫学习:借助DeepSeek完善爬虫软件,增加停止任务功能
用户之前已经得到了如何在GUI中通过停止按钮终止多线程爬虫的解决方案,但现在他指出了代码中的一个不足:CrawlerTask中的模拟爬取操作过于简单,且使用了无限循环,而实际爬虫任务应该是有限次数的,完成后自动停止。我在pycharm上尝试运行了这两个方法中的代码,发现都需要通过按下Ctrl+F2来停止爬虫任务,而我是希望在GUI上添加一个停止按钮,点击按钮后,停止爬虫任务,显然DeepSeek提供的答案并没有达到我的目的。第1问的答案不符合我的需求,应该是我的问题描述还不够详细,我继续提问。原创 2025-02-04 01:43:50 · 3157 阅读 · 0 评论 -
网络爬虫学习:应用selenium获取Edge浏览器版本号,自动下载对应版本msedgedriver,确保Edge浏览器顺利打开。
我从24年11月份开始学习网络爬虫应用开发,经过2个来月的努力,于1月下旬完成了开发一款网络爬虫软件的学习目标。这里对本次学习及应用开发进行一下回顾总结。前几天我已经发了一篇日志(网络爬虫学习:应用selenium从搜*狐搜索爬取新闻结果的数据)记录了应用中使用的爬虫技术。这篇日志记录另外一个问题的解决。原创 2025-01-30 00:07:27 · 4758 阅读 · 3 评论 -
网络爬虫学习:应用selenium从搜*狐搜索爬取新闻结果的数据
搜*狐*搜索是动态网页,输入关键字点搜索后,会显示10条结果,将浏览器右侧的滑动条往下拖,滑动到页面底部,会刷出新的搜索结果,每拖一次增加10条结果。通过网页浏览器的开发人员工具对页面数据进行分析,页面中的搜索结果的所在的DIV元素都有‘data-index'和'data-spm-data’,因此通过find_elements方法抓取包含着两个特征的DIV原始就可以获得所有的搜索结果。这就需要对上面操作得到的result_blocks做进一步处理,这里不细说了,可见后面的代码展示。用于获取日期和时间。原创 2025-01-25 22:50:08 · 1696 阅读 · 1 评论 -
网络爬虫学习:多线程爬取,并将结果更新到主线程UI上
但接下了我又遇到了难题,那就是在子线程中执行爬虫任务获取到数据后,如何将数据显示在UI中呢。为了模拟多线程爬虫任务的执行,这个类的传参tasks是一个列表,列表中保存了几个字符串(可以替换成url),列表中有多少个元素,就可以生成多少个子线程。我将这些资料整合在一起就有了一个完整了示例,能够模拟将爬虫任务获取到的数据更新到主线程UI中,且不影响主线程的操作,这为后面的软件开发打下了基础。使用了定时器后,再进行测试,UI不会被冻结,点击界面中的其它按钮,能够正常响应,且爬取的结果也能够顺利的更新到UI中。原创 2024-12-18 23:31:36 · 819 阅读 · 0 评论 -
网络爬虫学习:POST方式从腾*新闻搜索结果获取标题、链接、内容、来源、时间
通过上面的代码我们就可以从腾*网站获取到指定关键字的搜索结果了,获取到的结果是json格式的,其数据主要是字典和列表,使用python的基本语法就可以提取数据,无需使用第三方的库。中保存的请求头信息,如果不添加这个参数,容易被网站的反爬中机制给限制,我在测试的过程中,一开始没添加请求头信息参数,结果爬取几次后就被网站给限制了,导致无法正常请求到数据。有了这些基础代码,后续的爬取代码就可以基于此开发了,我最终的代码做成了,可指定关键字,要爬取的页数,每页的结果数量。根据输入的参数,进行循环爬取。原创 2024-11-27 22:41:58 · 1563 阅读 · 0 评论 -
网络爬虫学习:从新浪新闻搜索抓取所有新闻结果的标题、链接、内容、来源、时间
新浪新闻搜索的实现技术与百度又有些不同,刚开始我还只能抓取第一页的内容,不过有了之前的知识积累,再加上不断的从网上搜索相关的资料,总算解决了问题,实现了将新浪新闻搜索到的所有新闻的标题、链接、内容、来源、时间都抓取下来的目标。接着我又对页面下方的其它页的跳转按钮进行了分析,一看是有规律的,但我尝试了将其中的几个参数添加到浏览器的网址栏中点更新,没有获得期待的效果。我在网上搜索了一通,虽然找到了一些资料,但要么不能解决我遇到的问题,要么就是几年前的资料,看了一两遍,一时没看懂。原创 2024-11-24 19:49:50 · 4244 阅读 · 1 评论 -
网络爬虫学习:从百度搜索结果抓取标题、链接、内容,并保存到xlsx文件中
但在代码测试时经常会出现报错。另外一个不足就是,上面两个参考资料中的代码只能抓取一个页面的结果,而不是所有的搜索结果,而我希望一次抓取到更多的结果。我的同事因工作需要,不时要从网上搜索一些信息,他一般是登录百度、腾讯、搜狐等网站,输入关键字,得到搜索结果,然后从结果中一个个点开链接,查看相关的网页中有没有自己需要的内容。第一个参考资料中有现成的代码,可以将抓取到的数据保存到csv文件中,但在测试中,我发现,如果标题或摘要中有逗号,就会将字符串分割成多段,保存到多个列中,使得数据不能正常对齐(如下图)。原创 2024-11-20 00:03:05 · 2288 阅读 · 0 评论 -
Python界面编辑器Tkinter布局助手 使用体验
我检查了软件发现绑定事件是放在Win类中的,响应事件对应的函数是放在Controller类中的,而软件直接调用的WinGUI类,而WinGUI类并没有调用前面两个类,导致了点按钮无响应,我只好对源码进行修改来实现按钮的响应。由于还只用了一次,只是简单的尝试了一下,我所说的不一定都是正确的,后面我还会再多尝试一下,希望这个软件能够带给我不一样的感受。这个编辑器是个开源的项目,个人用户可以免费使用,我感觉挺好的,就尝试这用了一下。我把生成的py文件用pycharm打开,添加相关的逻辑代码,实现我需要的功能。原创 2024-06-13 17:19:59 · 4361 阅读 · 1 评论
分享