Python
文章平均质量分 61
laoyouzhazi
这个作者很懒,什么都没留下…
展开
-
[Handbook] Python + Tkinter: 桌面悬浮新闻速览 [ 2 ]
[代码][Handbook] Python + Tkinter: 桌面悬浮新闻速览 [ 2 ]原创 2022-10-14 08:00:00 · 759 阅读 · 1 评论 -
[Handbook] Python + Tkinter: 桌面悬浮新闻速览
【代码】[Handbook] Python + Tkinter: 桌面悬浮新闻速览。原创 2022-10-12 08:00:00 · 659 阅读 · 0 评论 -
[Handbook]一行cmd命令进入VENV环境并执行Python源文件
【代码】[Handbook]一行cmd命令进入VENV环境并执行Python源文件。原创 2022-10-06 08:00:00 · 1591 阅读 · 0 评论 -
[Handbook]一键某察者新闻
【代码】[Handbook]一键某察者新闻。原创 2022-09-25 08:00:00 · 290 阅读 · 0 评论 -
[Handbook]Python一键某狐首页新闻
【代码】[Handbook]Python一键某狐首页新闻。原创 2022-09-21 08:00:00 · 216 阅读 · 0 评论 -
[Handbook]一键某度热搜
【代码】[Handbook]一键某度热搜。原创 2022-09-19 08:00:00 · 282 阅读 · 0 评论 -
[Handbook] 一行shell命令进入VENV环境并执行Python源文件
【代码】[Handbook] 一行shell命令进入VENV环境并执行Python源文件。原创 2022-09-19 08:00:00 · 581 阅读 · 0 评论 -
一键下载小说(二):如何在Django中部署
在Django服务器中实施部署长时段的在线任务有两个关键的问题,如参数传递和超时问题。GET方法使用明文将参数拼接在URL地址后面传输,而POST则将表单参数加密后再发送,对于用户是不可见的。本文中的案例中,在本地搭建小说下载器,使用GET方法。至于超时问题,通常的惯例做法是在客户端使用Javascript脚本进行跳转或表单提交。需要的参数通过客户端Form表单提交和服务端渲染Django模板返回的组合方式进行交换。.........原创 2022-09-01 08:00:00 · 236 阅读 · 0 评论 -
Python: 一键下载小说(一)
前段时间写了个双引擎分章节下载存储小说的思路简述。对于一些没有特定的阅读器的小说迷来说,大量的章节文件是一件很麻烦的事儿。并且考虑到小说网站限速的问题,加上网络传输速度和硬盘读写速度的差距,这显得实际的意义不大。于是决定重写更简单的基础版的一键下载小说。将一本小说的多个章节合并存储在一个文本。只需一个简单的文本阅读器就可实现小说的轻松阅读。...原创 2022-08-29 08:00:00 · 1237 阅读 · 0 评论 -
Django在模板中使用CSRF Token
CSRF Token在Django站点的模板中主要应用在form表单,步骤相对简单。在HTML模板中添加“{% csrf_token %}”标记。一般常用对应的两种方法是GET和POST。GET方法把传入参数名称和值格式化包含在URL地址后缀。POST方法则是将参数加密包含在HTTP/HTTPS协议格式的消息之中。对于一些敏感操作,为了避免短时间重复执行,CSRF Token令牌是很有效且必要的措施。...原创 2022-08-26 08:00:00 · 1261 阅读 · 0 评论 -
Python + re + scrapy.Selector: 分析提取某在线征信站体系内容(一)
对于大多数求职者而言,查询企业征信是很有必要的。作为一个有“内涵”有技术的计算机科学技术人员,纯手动搜索实在不是流行的手法。半自动化和自动化才是办公流行的新趋势。科学技术是第一生产力,而时间就是金钱。智能分析可以节省大量的精力和资源,提高工作效率和产出质量。不管是作为一名有“深度”的劳斯基亦或是懵懂的菜鸟,下面就来试试如何使用Python工具包智能分析提取在线征信内容吧。原创 2022-08-24 08:00:00 · 685 阅读 · 2 评论 -
Django:POST上传图片网址跳转
为了很好地提高用户体验,通过form表单的POST方法上传内容有时需要进行页面跳转。如果没有跳转至其他页面而保留在form所在的页面,且用户需要重载刷新当前页面时,就会很有可能出现重复提交form表单数据的问题。在此场景中,为了避免此类问题,在提交表单数据后,进行及时的页面跳转是很有效果的。...原创 2022-08-19 08:00:00 · 642 阅读 · 0 评论 -
Python + Requests + Scrapy + Fcntl: 双引擎下载小说(简述)
Python + Requests + Fcntl: 双引擎下载小说前言关于双引擎原理流程库RequestsScrapyFcntl前言略关于双引擎原理流程库Requests导入包含requests、自定义的httpkit.py模块。from httpkit import *Scrapybash命令行pip安装Scrapy。~$: pip install scrapy导入scrapy.Selector分析HTML源码。from scrapy import SelectorF原创 2022-05-28 08:00:00 · 228 阅读 · 0 评论 -
Python + Requests: Connection Keep-Alive
Python + Requests: Connection Keep-AliveHTTP/HTTPS Header Attribute ConnectionRequestsSession会话后记HTTP/HTTPS Header Attribute Connectionhttp/https header头部参数Connection分为短连接和长连接,对应属性为:close和keep-alive。http/https短连接是一次性读写完成后断开的连接,长连接则是在连接保持范围内可分多次传输数据。不管是长连原创 2022-05-24 08:00:00 · 3381 阅读 · 0 评论 -
Python: 命令行格式化打印之表格
Python: 命令行格式化打印之表格前言分隔符打印描述代码示例定长单元格描述代码示例变长单元格描述代码示例前言对于程序员而言,数据处理中,数据加工是为重中之重。但是,从数据处理的最终目标的角度来看,数据显示的作用比肩于数据加工。甚至,在某些应用场景中,数据的表现形式的作用远胜于加工处理。数据处理的最终目的是为了直观地呈现出来。数据的分析处理方案固然不可或缺。不过,别忘了适当的呈现结果数据也是必要且最终的环节。在处理数据的过程中,很多时候需要快速的呈现当前结果。这时,没有必要过于注重呈现的外在形式,却又原创 2022-04-24 08:00:00 · 2275 阅读 · 1 评论 -
Python + Tkinter:图片浏览器(二)
Python + Tkinter:图片浏览器(二)前言说明改进功能图片导航显示上一张高清图片显示下一张高清图片缩略图导航缩略图列表缩略图上一页缩略图下一页缩略图指引图片管理高清图片删除图片图库管理浏览图库重载图库调整窗口窗口标题栏窗口自适应布局工具栏自适应高清图自适应导航按钮自适应缩略图自适应GC模块ostkinterPIL自定义imageutil.pyimageviewer.py界面附录前言结合前面写的两版图片浏览器(附录),重新改写第二版。第一版可以查看缩略图和翻页,第二版结构简单,界面简洁清爽。结原创 2022-04-20 08:00:00 · 2765 阅读 · 0 评论 -
Openpyxl 简要手册(一)
Openpyxl 简要手册(一)简介安全问题兼容安装openpyxlopenpyxl用法创建 .xlsx创建工作簿Workbook创建工作表Sheet保存Workbook关闭 Workbook打开.xlsx使用工作表修改工作表单元格内容添加空白行删除工作表示例save_to_excel.py简介Openpyxl 是用来读写Excel 2010 xlsx/xlsm/xltx/xltm文件的库。Documentations of Openpyxl on readthedocs.io: https://op原创 2022-04-13 08:00:00 · 5773 阅读 · 0 评论 -
Python: 计算百分比
Python: 计算百分比题目说明方法一:浮点数有效值代码示例一示例二示例三示例四方法二:取整取余代码示例一示例二示例三笔记题目说明假设变量a,b,其中b不等于0。限定小数后有效位数为2,求a对于b的百分比。方法一:浮点数有效值代码def format_percentage(a, b): p = 100 * a / b if p == 0.0: q = '0%' else: q = '%.2f%%' % p return q示例一print(format_percentage原创 2022-04-10 08:00:00 · 13731 阅读 · 0 评论 -
Python + Tkinter:图片浏览器(一)——最小体积
Python + Tkinter:图片浏览器(一)——最小体积前言说明布局方式图片展示自动适应窗口选择图片目录功能图片导航浏览图库窗口调整模块tkinterPILos自定义imageutil.pyimageviewer.py界面笔记前言之前写过一篇关于图片浏览器的博文:Python + Tkinter:简易图片浏览器。由于仓促间完成,没有过多的琢磨和提炼,作品有些不尽人意。在使用过程中,觉得界面还不够清爽,做过一些改进。但一直没有更新。个人觉得还是图片浏览器,在视觉感官上,简洁纯粹的画面才是所追求的体验原创 2022-04-08 01:03:34 · 2461 阅读 · 0 评论 -
自定义HTTP工具包:httpkit.py
自定义HTTP工具包: httpkit.py1. 模块1.1 内置模块1.1.1 socket.settimeout1.1.2 sslssl._create_default_https_contextssl._create_unverified_context1.1.3 urllib.requesturllib.request.Requesturllib.request.HTTPCookieProcessorurllib.request.build_openerurllib.request.Response原创 2022-04-03 08:00:00 · 1498 阅读 · 0 评论 -
Python: 如何去除字符串多余的空格、换行符(二)
如何去除多余的空格、换行符(二):文本文件前言内存变量磁盘文本文件二进制流前言前面写过一个关于简单去除多余空格、换行符的小抄:Python: 如何去除字符串多余的空格、换行符。有时,掌握一些不经意间的小技巧能节省很多时间,对文档规范化和自定义样式化还是很有帮助的。文档的整理囊括许多方面的问题,比如关于它的描述包含逻辑描述和物理描述。逻辑描述是从自然语言的角度出发,以人类语言逻辑的方式加工生成,易于理解。物理描述,通常是指文档的存储格式或存储描述,字符以某种特定的方式编码保存在存储器硬件上。实际上,由于原创 2022-04-01 08:00:00 · 4576 阅读 · 0 评论 -
Python:如何简单快速过滤HTML标签
代码:"""@author: MR.N@created: 2022/3/30 Wed.@version: 1.0"""import ioimport redef filter_html_tags(text): htmltags = ['div', 'ul', 'li', 'ol', 'p', 'span', 'form', 'br', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', '原创 2022-03-30 08:00:00 · 1197 阅读 · 0 评论 -
Django: AttributeError: module ‘mimetypes‘ has no attribute ‘inited‘
对修改的Django项目执行命令出现异常。$python manage.py runserver报错日志:Traceback (most recent call last): File "manage.py", line 22, in <module> main() File "manage.py", line 18, in main execute_from_command_line(sys.argv) File "/home/user/apps/v原创 2022-03-09 08:00:00 · 788 阅读 · 0 评论 -
Python + PIL + Tkinter: 图片原比例缩放
示例代码使用Python 的PIL和Tkinter库。根据屏幕大小按照原图片长宽比例进行无拉伸的等比例缩放。预设屏幕方向为竖屏(1080 * 4096),仅是为了适应手机图片。图片缩放比例对照原图的长宽比例,分多次进行,包含快速调整、精确微调以及适应性调整。# ...from PIL import Image, ImageTk# ...# 预设竖屏图片尺寸I_WIDTH = 1080I_HEIGHT = 4096def image_resize(path, screen_width=0原创 2022-02-19 08:00:00 · 5711 阅读 · 0 评论 -
Python + difflib: 比对新闻消息获取热点
获取热点新闻有很多种方法,比如直接获取新闻网站的热点栏目。热点栏目可能是编辑推荐的,具有较大主观性。稍微复杂点的可以通过提取热点词组。通过对每条消息分词,比对分析得出出现最频繁的词典,包含热门词典词汇的消息即是热点新闻。 此外,还可以通过对比新闻消息相似度来提取热点。这种方法综合以上两者的优点。在比对语句相似度的过程中,隐性提及热门词汇。除去大规模比对消息外,可以对热点栏目新闻进行相似度比较,比较快速有效地生成热点的预览。from difflib import Seq...原创 2021-10-20 08:00:00 · 351 阅读 · 0 评论 -
Python + Requests + Scrapy:一周天气预报
打开中国天气首页,选中某个城市,例如广州。进入城市天气预报详细页面,选择“7天”。分析一周天气预报的结构体系,查找一周天气预报的根节点。根节点是id="7d"的div标签。解析每日天气预报列表的节点详细。每日天气预报列表是一个包含多个li标签、class="t clearfix"的ul标签。每日天气预报包含的有效信息为:日期、天气、温度、风向等4个基本要素。"""@author: MR.N@created: 2021-08-22 12:30 AM Sun..原创 2021-09-29 08:00:00 · 257 阅读 · 0 评论 -
Python UI交互进阶:实现匿名类
熟悉Android UI交互的码友都知道,匿名类是非常好用的。基于定义基类或现有类,通过继承父类和实例化匿名类的方式,就可以简单快速构建本地数据和域外数据的交互的桥梁。在本地定义实例化的匿名类内,可以轻松调用本地的全局变量,从而实现不同域的数据交换。一般的域间数据交换,可以通过传参的方式实现。但是,对于多次连续的域间交互,这种方式就显得见肘捉襟。或者说,这是根本不可能的,因为传参方式是单向的,无法实现交互式的数据交换。 基于此种情况,匿名类刚好补足这个空白。不巧的是,Pyt...原创 2021-09-19 23:46:15 · 837 阅读 · 0 评论 -
单词之和
实现一个 MapSum 类,支持两个方法,insert和sum:MapSum() 初始化 MapSum 对象void insert(String key, int val) 插入 key-val 键值对,字符串表示键 key ,整数表示值 val 。如果键 key 已经存在,那么原来的键值对将被替代成新的键值对。int sum(string prefix) 返回所有以该前缀 prefix 开头的键 key 的值的总和。示例:输入:inputs = ["MapSum", "inser...原创 2021-09-17 20:55:57 · 83 阅读 · 0 评论 -
神奇的字典
神奇的字典设计一个使用单词列表进行初始化的数据结构,单词列表中的单词 互不相同 。 如果给出一个单词,请判定能否只将这个单词中一个字母换成另一个字母,使得所形成的新单词存在于已构建的神奇字典中。实现 MagicDictionary 类:MagicDictionary() 初始化对象void buildDict(String[] dictionary) 使用字符串数组 dictionary 设定该数据结构,dictionary 中的字符串互不相同bool search(String searc.原创 2021-09-17 12:39:59 · 241 阅读 · 0 评论 -
判断URL是否有效的简单方法
URL地址常见协议主要包含http/https和ftp三种。验证URL地址有效性首要步骤是检查网址头部是否包含协议。如果必须包含显式的协议声明,则提取协议并判断是否在常见协议列表中。URL地址协议格式一般为:[schema]://[dns];或[schema]://[dns]/[path],path in ([directory] , [path]/[directory]);schema in ('http', 'https', 'ftp')。URL网址中的域名DNS至少包含一个域名分割原创 2021-07-20 13:41:38 · 5706 阅读 · 0 评论 -
Python + Selenium: 使用webdriver判断浏览器是否关闭
在使用Selenium的过程中,偶然发现浏览器意外关闭导致意料之外的错误发生。比如重复启动浏览器。在无界面headless模式下,因为目前流行的浏览器是多进程的,这是很难发现的。在浑然不知的情况下,多次重复启动浏览器而没有正常关闭,很可能导致多个浏览器进程以“假死”的状态滞留内存。“僵尸”进程占用浪费系统资源,堵塞其他进程,降低系统的性能。因此,需要合理正确的判断且处理浏览器状态,并在必要时回收系统资源的方法。由于Selenium中webdriver是直接管理浏览器行为的实体,所以可以通过webdriv原创 2021-09-07 21:28:56 · 5559 阅读 · 0 评论 -
Python + Selenium 自动翻页的方法概要总结
一、使用分析提取的网址 可以分析目标网页的体系结构,解构目标数据结构分析提取下一页的网址。目标数据结构可能是预先设定以相同前缀+页码的连续网页地址集、包含目标数据的href属性的a标签,或者加载的Javascript变量值,亦可能是远程地址的XML/JSON数据。通过Selenium的webdriver.get(url)直接跳转至下一页。或者使用webdriver.execute_script('window.location="'+url+'";')以Javascr...原创 2021-08-28 23:13:11 · 2684 阅读 · 0 评论 -
Python + Selenium + Scrapy:爬取分析存储C站博客统计数据示例
为了简化案例,这里仅提及C站博客首页旧版和部分统计数据。C站旧版的博客主页都是类似 “https://blog.csdn.net/” + uid 这样子的。这种比较好办。找好用户id就可以重用网址前缀。定义简单的C站用户ID类csdnuser.py:"""@author: MR.N@create: 2021-07-22 Thur. 12:12"""class CSDNUser: def __init__(self): self.uid = None原创 2021-08-19 23:05:49 · 185 阅读 · 0 评论 -
Python + Tkinter:简易图片浏览器
系统默认的图片显示软件用着不顺手,心血来潮自己捣鼓一个简单易用的图片浏览器。另外不会留下垃圾和痕迹不是?!直接代码:"""@author: MR.N@created: 2021-08-07 Sat. 14:02"""import tkinter as tkimport os# 文件读写IOfrom fio import *from PIL import Image, ImageTk# 库的导入管理from pio impor...原创 2021-08-13 22:47:31 · 3379 阅读 · 16 评论 -
Django3.2.5项目settings.py中“USE_TZ = True”时区无法正常转换相关的bug
不得不说,这是一个迷之一样的bug。在Django3.2.2中,使用代码“last_updated = models.DatetimeField(default=datetime.datetime.now().replace(tzinfo=pytz.timezone('Asia/Shanghai')))”还是可以将UTC时间转换为Asia/Shanghai时区时间的。但是升级至Django3.2.5时,事情就不一样了。如果在不清楚原委的情况下,很容易陷入其中难以自拔的怪圈:不断在P...原创 2021-07-23 23:48:16 · 597 阅读 · 1 评论 -
Python TabError: inconsistent use of tabs and spaces
TabError:查看源文件,定位第48行代码。这里使用的是Ubuntu Linux的Vim编辑器。源文件中的第48行代码缩进位置表面看起来没有问题。按一下Backspace键:再按一下Backspace键:再按一下Backspace键:按下Tab键:再按一下Tab键,调整第48行代码至正确位置,保存文件。重新编译:编译通过,错误修正成功,问题解决。这种类型的问题通常是使用不同IDE编辑同一个源文件引起的。一些文本编辑器自动化程度较高...原创 2021-06-24 01:08:48 · 203 阅读 · 0 评论 -
多层次应对HTTPS网站超时:selenium.common.exceptions.TimeoutException
现在网络越来越普及,带宽速度普遍也有较大提升。伴随网络的普及,同时快速增长的还有网民的数量和网络流量。网站超时响应的“通病”,仍然是无法完全避免的。尤其是在网络流量高峰期,在使用类似Selenium的浏览器内核驱动driver方案过程中,这类问题的处理是关键。下面以Selenium WebDriver和Firefox为例子,介绍如何多层次应对网站超时响应的问题。初始化设置WebDriver的页面加载和脚本执行超时限制。from selenium import webdriverfrom sele原创 2021-05-21 22:32:05 · 7643 阅读 · 1 评论 -
举一反三:如何查找特定版本Firefox与Selenium WebDriver关联的内核驱动driver
首先想到的是度娘一番搜索,得出一大堆连接,逐个翻阅网页筛选有效信息条目。这是最直接却不一定是最有效的办法。别人的经验固然重要,更要紧的是从前人的经验中掌握一种学习方法。在信息爆炸的互联网时代,想要与时俱进,与其苦苦等待别人的经验知识传授,不如积极主动获取最新的信息和掌握渠道来源。下面切回正题,查找关于Selenium的资料,最好是从源站点Selenium.dev入手。点开Selenium Documentation文档的一级子栏“Getting started with WebDriver”,在二级子栏目“原创 2021-05-12 16:29:30 · 8707 阅读 · 2 评论 -
一起来种菜吧(一)
最近心血来潮弄了个蔬菜(瓜果)采收管理应用。 在Windows操作系统上,采用Django搭建Web服务器中间件。前端使用VUE的示例部分CSS。命令行窗口输入以下命令创建web站点,生成基本的Django配置文件:>django-admin startproject mysitemysite/ manage.py mysite/ __init__.py settings.py urls.py asgi.原创 2021-03-20 22:16:10 · 188 阅读 · 0 评论 -
Python + Selenium 简单模拟浏览新闻网站和文章
"""Author: MR.NCreated: 2020/11/27 Friday 2020年11月27日 星期五"""from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support import expected_conditions as ECSfrom selenium.webdriver.support.wait import W.原创 2020-12-03 22:11:29 · 263 阅读 · 0 评论