
python
小龙在山东
本博客为个人整理的技术笔记,仅用于学习。
展开
-
基于 Python typing 模块的类型标注
Python 是动态类型语言,运行时不强制要求函数与变量类型标注,但是也支持标注类型,以便于类型检查,IDE提示等,提高代码质量。Python 默认的类型注释比较简单,Python 3.5 新增了 typing 模块,扩展了类型功能。原创 2025-02-17 23:15:00 · 375 阅读 · 0 评论 -
基于 Python Pendulum 的日期时间处理
Pendulum 是对 Python datetime 的继承和发展,让日期时间处理更简单,比 datatime 更加人性化,支持 Python 3.9 及以上版本。原创 2025-02-14 20:15:00 · 330 阅读 · 0 评论 -
解决基于FastAPI Swagger UI的文档打不开的问题
基于FastAPI Swagger UI的文档链接和在没有外网的状态下无法打开,原因是Swagger依赖的JS和CSS来自CDN。FastAPI可以配置这些链接地址,改为本地目录下,自定义Javascript和CSS的CDN地址:文件下载地址:原创 2025-02-08 22:30:00 · 751 阅读 · 0 评论 -
基于 Python schedule 的任务调度
schedule 是Python的第三方任务调度库,可以用来做定时任务,API简单易用,可以按照秒,分,小时,日期或者自定义事件执行时间,不需要额外的流程,非常轻量级,没有外部依赖,兼容Python 3.7、3.8、3.9、3.10和3.11。原创 2025-02-07 23:30:00 · 541 阅读 · 0 评论 -
基于MinIO的对象存储增删改查
MinIO是一个高性能的分布式对象存储服务。Python的minio库可操作MinIO,包括创建/列出存储桶、上传/下载/删除文件及列出文件。原创 2025-01-30 20:15:00 · 282 阅读 · 0 评论 -
mitmproxy代理的使用
mitmproxy是的简称,译为中间人代理工具,可以交互方式拦截SSL/TLS加密的HTTP/1、HTTP/2、WebSockets请求。mitmdump以命令行终端形式呈现,类似HTTP版的tcpdump。mitmweb是基于Web交互的mitmproxy,操作上类似于Vim,是类似于 Chrome 浏览器开发者模式的可视化工具。原创 2020-06-05 15:28:13 · 879 阅读 · 0 评论 -
基于Python DownloadKit的文件下载
DownloadKit 是一个基于 python 的简洁易用的多线程文件下载工具。使用简单,功能强大。原创 2025-01-22 08:00:00 · 154 阅读 · 0 评论 -
基于tldextract提取URL里的子域名、主域名、顶级域
TLD是的缩写。tldextract 是一个用于从URL中提取子域、主域名和顶级域(TLD)的Python库。它利用公共后缀列表(Public Suffix List)来确保即使是复杂或不常见的URL结构也能被正确解析。tldextract能够处理包括ICANN管理的公共TLD以及可选的私有域名,帮助开发者准确地分离出URL的各个部分,尤其是在处理多层子域时,避免了简单的字符串分割带来的错误。原创 2025-01-21 23:00:00 · 308 阅读 · 0 评论 -
conda管理Python库和虚拟环境
conda 是一个开源的跨平台软件包管理系统和环境管理系统,用于安装、运行和协调不同版本的软件包和其依赖项。它最初是为 Python 语言而设计的,但现在已经支持多种编程语言和工具。conda 可以轻松地创建和使用虚拟环境,这些环境可以独立于系统上的其他环境和安装的软件包运行。conda 还有一个广泛的软件包仓库,其中包含许多科学计算、数据分析和机器学习软件包,可供用户直接安装和使用。原创 2025-01-10 23:15:00 · 638 阅读 · 0 评论 -
ubuntu20.04默认的python3.8升级到python3.10
Python 3.8 于 2019 年 10 月发布,距今已有五年时间。2024 年 10 月是 Python 3.8 版本发布的最后一个月,从 2024 年 10 月开始,如果存在安全错误,Python 开发团队将不会修复该错误。有必要把python3.8升级python3.10。原创 2024-11-15 20:00:00 · 1031 阅读 · 0 评论 -
Caused by SSLError(“Can’t connect to HTTPS URL because the SSL module is not available)
原因是Anaconda没有安装好,环境变量没有配置成功,需要添加三条环境变量。原创 2024-11-08 21:45:00 · 434 阅读 · 0 评论 -
python使用aria2下载视频、使用JSON-RPC
在上面的代码中,我们首先设置了Aria2的路径和下载目录,然后指定了要下载的视频的URL。我们使用了aria2c的一些参数来加速下载。-x和-s参数指定了同时下载的连接数和服务器数。-k参数指定了每个连接的块大小。接着,我们使用subprocess模块启动一个Aria2进程,并将输出和错误信息存储在output和error变量中。最后,我们判断下载目录中是否存在名为video.mp4的文件,如果存在则表示下载成功,否则表示下载失败。原创 2023-04-22 16:33:30 · 4120 阅读 · 0 评论 -
基于jsonpath_ng的JSON数据查改增删
jsonpath_ng支持JSON数据的读写操作。原创 2024-09-25 08:00:00 · 333 阅读 · 0 评论 -
基于jsonpath的JSON数据查找
jsonpath是类似xpath的路径查找工具,可以方便地从JSON数据里查找到数据。原创 2024-09-24 23:00:00 · 383 阅读 · 0 评论 -
flask实现Streaming内容传输(SSE接口)
当传输大量内存,以至于超出内存大小,一般http服务器会报500错误,这时可以使用Streaming流的方式来传输内容,类似ChatGPT和视频流那样的输出方式,flask里要用到生成器和直接响应。原创 2024-08-08 21:30:00 · 830 阅读 · 0 评论 -
基于pytesseract的OCR图片识别
pytesseract是基于谷歌的tesseract的OCR包,支持识别一些简单的数字、字母、中文。原创 2024-07-12 23:30:00 · 602 阅读 · 0 评论 -
Java和Python3实现AES/CBC/PKCS5padding加密解密
Java和Python3实现AES/CBC/PKCS5padding加密解密。原创 2022-09-09 20:45:00 · 2205 阅读 · 0 评论 -
基于docxtpl的模板生成Word
docxtpl是一个用于生成Microsoft Word文档的模板引擎库。它结合了docx模块和Jinja2模板引擎,使用户能够使用Microsoft Word模板文件并在其中填充动态数据。这个库提供了一种方便的方式来生成个性化的Word文档,并支持条件语句、循环语句和变量等控制结构,以满足不同的文档生成需求。docxtpl是基于python-docx和jinja2开发出来的库。它通过对docx文档模板加载,使用类似jinja2网页模板开发的语法对其进行修改。原创 2024-05-22 23:00:00 · 1379 阅读 · 0 评论 -
Flask基于flask_login实现登录、验证码
flask_login 是一个 Flask 扩展,用于在 Flask web 应用中实现用户会话管理。它允许你跟踪哪些用户已经登录,并管理他们的登录状态。flask_login 提供了用户认证的基础结构,但具体的用户验证(如用户名和密码检查)和存储(如数据库)需要你自行实现。以下是 flask_login 的一些主要特性和功能:用户登录和注销:提供用户登录和注销的接口。用户认证:通过装饰器(如 @login_required)确保只有已登录的用户才能访问特定的视图或路由。原创 2024-04-11 23:45:00 · 1052 阅读 · 1 评论 -
Python生成图片和音频验证码
captcha是pyhton的一个模块,用来生成图片和音频验证码。原创 2024-04-12 08:00:00 · 376 阅读 · 0 评论 -
利用Python实现可视化交互界面:Dash
Dash是一个低代码数据框架,用Python实现可视化交互界面,不用写Javascript,开源,支持回调、HTML组件等功能。原创 2024-04-11 21:00:00 · 1081 阅读 · 0 评论 -
Ollama利用嵌入模型实现RAG应用
Ollama支持embedding models嵌入模型,从而支持RAG(retrieval augmented generation)应用,结合文本提示词,检索到文档或相关数据。嵌入模型是通过训练生成向量嵌入,这是一长串数字数组,代表文本序列的关联关系。Ollama的嵌入模型有三种:mxbai-embed-large、nomic-embed-text 、all-minilm。原创 2024-04-11 19:00:00 · 10884 阅读 · 2 评论 -
Python字符串模糊匹配:thefuzz
在查询数据时,字符串匹配经常用到模糊匹配,这时就要用到模糊匹配算法,如Levenshtein Distance 算法,计算编辑距离,这里Python的thefuzz包实现了模糊匹配功能。原创 2024-04-07 16:33:08 · 345 阅读 · 0 评论 -
基于textrank4zh实现文本提取关键词、关键短语、摘要
TextRank算法可以用来从文本中提取关键词和摘要(重要的句子)。TextRank4ZH是针对中文文本的TextRank算法的python算法实现。原创 2024-03-08 18:20:07 · 1750 阅读 · 0 评论 -
基于textdistance计算文本相似度
textdistance是Python的第三方库,用于计算文本之间的相似度或距离。它提供了30+个算法,简单易用。原创 2024-03-08 19:45:00 · 487 阅读 · 0 评论 -
基于similarities的文本语义相似度计算和文本匹配搜索
similarities 实现了多种相似度计算、匹配搜索算法,支持文本、图像,python3开发。原创 2024-03-07 21:00:00 · 2449 阅读 · 0 评论 -
python将Word页面纸张方向设置为横向
通过python-docx的章节属性,就可以更改纸张方向、纸张尺寸。更改纸张方向,分两步,第一步是设置section的orientation属性为LANDSCAPE,第二步是设置section的宽高互换。原创 2024-02-06 14:00:00 · 1563 阅读 · 0 评论 -
Win7 和 Win Server 2008 安装Anaconda报错:Failed to extract packages
在Python官网来看,Python 3.8.18之后,就不再支持Windows7。对应Anaconda的版本就是anaconda3-2021.05。原创 2024-01-26 19:00:00 · 792 阅读 · 0 评论 -
基于matplotlib封装的可视化库Seaborn:设置风格样式、设置环境
seaborn是一个基于matplotlib进行高级封装的可视化库,相比之下,绘制图表更为集成化、绘图风格具有更高的定制性。原创 2024-01-25 08:00:00 · 655 阅读 · 0 评论 -
基于python的网页自动化工具:DrissionPage
DrissionPage 是一个基于 python 的网页自动化工具。它既能控制浏览器,也能收发数据包,还能把两者合而为一。可兼顾浏览器自动化的便利性和 requests 的高效率。它功能强大,内置无数人性化设计和便捷功能。它的语法简洁而优雅,代码量少,对新手友好。原创 2024-01-24 08:00:00 · 1733 阅读 · 0 评论 -
pandas read_sql报错:AttributeError: ‘OptionEngine‘ object has no attribute ‘execute‘
pandas不兼容问题sqlalchemy 2.0以上版本。原创 2023-12-04 23:45:00 · 701 阅读 · 0 评论 -
Flask、Pandas实现文件下载
Flask实现文件下载可以用send_file函数,接收BytesIO比特流对象,也可以重命名下载文件,是否可以作为附件下载。注意:output比特流要初始化指针到开头。原创 2023-12-02 21:20:37 · 249 阅读 · 0 评论 -
Python concurrent.futures实现多进程多线程编程
Python的concurrent.futures模块可以很方便的实现多进程、多线程运行,减少了多进程带来的的同步和共享数据问题。Executor是一个抽象类,表示一个可执行的上下文。Future则代表一个将要执行的任务,并提供了一些方法来获取任务的状态和结果。ThreadPoolExecutor是Executor的一个具体实现类,它使用线程池来执行任务。原创 2023-12-02 23:45:00 · 793 阅读 · 0 评论 -
pandas.get_dummies函数:把离散信息转换成onehot矩阵
pandas.get_dummies函数用来把可以分类信息转换成0和1矩阵。原创 2023-12-02 13:45:00 · 483 阅读 · 0 评论 -
Pandas 获取年、季度、月第一天、最后一天,加一秒、加一天、午夜时间
标准化(午夜时间)本月初下个月初月底减去一秒加一天年第一天年最后一天参考pandas.Timestamp.htmlpandas.Series.dt.normalizepandas.tseries.offsets.MonthEnd.htmlpandas.tseries.offsets.MonthBegin.html原创 2023-11-24 21:00:00 · 1040 阅读 · 0 评论 -
Pandas 数据关联join() 报错:ValueError: You are trying to merge on int64 and object columns.
使用join进行数据关联,这里用了一个命名的id作为关联主键,左侧是数值类型,右侧是字符串类型。原创 2023-11-23 18:30:00 · 569 阅读 · 0 评论 -
dask读取sql数据:MySQL
注意:dask不兼容sqlalchemy 2.0版本以上。原创 2023-11-22 08:30:00 · 461 阅读 · 0 评论 -
pandas字符串操作:大小写转换、连接、分割、包含等
【代码】pandas字符串操作:大小写转换、连接、分割、包含等。原创 2023-11-18 10:00:00 · 474 阅读 · 0 评论 -
Pandas数据过滤的多种方式
【代码】Pandas数据过滤的多种方式。原创 2023-11-18 09:00:00 · 556 阅读 · 0 评论 -
数据分析工具Polars实现CSV读写、排序、应用函数、lazy API
polars使用rust实现,内部使用arrow列存储格式,支持并行数据处理,比pandas快,分两种模式eager和lazy。适合中、小型数据处理,大型数据建议用Spark。原创 2023-11-14 23:45:00 · 1742 阅读 · 0 评论