<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[北冥有鱼的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/JBY2020</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; JBY2020]]></copyright><item><title><![CDATA[Pandas库：(四)数组对象的增删改操作]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145775515</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145775515</guid><author>JBY2020</author><pubDate>Fri, 21 Feb 2025 15:25:32 +0800</pubDate><description><![CDATA[它可以替换单个值、列表中的多个值、正则表达式匹配的值，甚至可以使用字典指定复杂的替换规则。它是一个非常常用的数据清理工具，可以根据索引或标签删除指定的行或列。Keep：支持'first', 'last', ``False``，默认为first，表示要保留的数据，False是表示都不保留。ignore_index=True ：是否生成新的索引,新索引使用系统默认的整型索引。axis=0：表示沿着指定的轴拼接（默认为0，表示行方向；ignore_index：是否生成新的索引,新索引使用系统默认的整型索引。]]></description><category></category></item><item><title><![CDATA[Pandas库：(三)数组对象的数据查询]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145749741</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145749741</guid><author>JBY2020</author><pubDate>Thu, 20 Feb 2025 12:02:57 +0800</pubDate><description><![CDATA[iloc表示计算机系统记忆的索引(从0开始的整型递增数字)，不支持的修改的索引，相当于EXCEL中的行号和列号，用法：DataFrame.iloc()[行索引,列索引]使用时可以省去括号 ，loc()[]  同 loc[] ，iloc()[] 同 iloc[]，[]中均可传两个参数，[行参数,列参数]loc表示自定义或系统默认索引，支持修改的索引，用法：DataFrame.loc()[行索引或行名称或条件,列名称]tail： 获取后n行，有一个参数n，默认=5，为后五行，可以自定义设置。]]></description><category></category></item><item><title><![CDATA[Pandas库：(二)数组对象的索引]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145732728</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145732728</guid><author>JBY2020</author><pubDate>Wed, 19 Feb 2025 16:31:50 +0800</pubDate><description><![CDATA[对于顺序数据(索引必须是单调递增或递减的),如时间序列或数值作为索引时，重建索引时会需要进行插值或填值处理，使用method参数进行设置。"backfill"和"bfill", 表示后项值填充；"ffill"和 "pad"，表示前项值填充。默认的缺失值为nan，可通过fill_value参数指定自定义的缺失值。重建索引时，如果索引值不存在就会引入缺失值。]]></description><category></category></item><item><title><![CDATA[Pandas库：(一)数组对象的创建]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145729206</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145729206</guid><author>JBY2020</author><pubDate>Wed, 19 Feb 2025 15:42:05 +0800</pubDate><description><![CDATA[Pandas是Python高效且强大的数据分析库。它是基于NumPy的数据分析模块,它提供了大量标准数据模型和高效操作大型数据集所需的工具。Pandas有:Series、DutaFrame和Panel三种数据结构。Series类似于数组，DataFrame类似于表格的二维数组，Panel可以视为Excel的多表单Sheet。方便测试，这里写两个方法用来产生随机列表和字典。]]></description><category></category></item><item><title><![CDATA[python+Ollama库实现简单的AI模型问答交互]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145707344</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145707344</guid><author>JBY2020</author><pubDate>Tue, 18 Feb 2025 16:04:31 +0800</pubDate><description><![CDATA[安装ollama库：pip install ollama -i https://pypi.mirrors.ustc.edu.cn/simple/需要先在本地部署对应的模型。]]></description><category></category></item><item><title><![CDATA[DeepSeek本地部署和调用]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145704667</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145704667</guid><author>JBY2020</author><pubDate>Tue, 18 Feb 2025 15:13:05 +0800</pubDate><description><![CDATA[ollama是一个开源的本地大语言模型运行框架，设计用于简化在本地运行大型语言模型的过程，降低使用门槛。‌它通过简单的安装指令，使得用户可以通过一条命令在本地运行开源大型语言模型。Ollama保留了类似Docker的操作习惯，支持上传和管理大语言模型仓库。可选择Chatbox或Cherry Studio作为可视化交互工具使用。当前太过火热，下载一直很慢，点击后几乎没有响应，这里选择使用。打开命令行窗口进行命令运行，下载安装有点慢哦，耐心等待一下，你可以正常问它，但是它不一定正常回复你，呵呵。]]></description><category></category></item><item><title><![CDATA[Python+PIL：压缩图片]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145595913</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145595913</guid><author>JBY2020</author><pubDate>Wed, 12 Feb 2025 16:59:09 +0800</pubDate><description><![CDATA[有时在发送一些文件如PPT、Word时，由于文件中的图片太大，导致文件也太大，无法发送，所有可以对文件中的图片进行压缩，下面代码根据用户自定义的目标大小（如30KB或40KB）进行压缩，并尽可能保证图片清晰度。：优先降低质量，避免不必要的缩放，减少清晰度损失。：在压缩后对图片进行锐化处理，进一步提升清晰度。重采样算法，保证缩放后的图片清晰度。]]></description><category></category></item><item><title><![CDATA[Python+spire.doc：读取Word文档内容]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145593276</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145593276</guid><author>JBY2020</author><pubDate>Wed, 12 Feb 2025 15:52:00 +0800</pubDate><description><![CDATA[因为Word文档本质上是流式文档，流式布局，所以没有“页面”的概念。为了方便页面操作，Spire.Doc for Python提供了FixedLayoutDocument类，用于将Word文档转换为固定布局。Document.Sections[index] 属性可用于获取Word 文档中的特定节点。获取后，可遍历该节中的段落、表格等。可对查找的内容进行其他操作。]]></description><category></category></item><item><title><![CDATA[Python-pywin32库的使用]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145584943</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145584943</guid><author>JBY2020</author><pubDate>Wed, 12 Feb 2025 11:16:20 +0800</pubDate><description><![CDATA[Beep()用于通过计算机的主板扬声器（或声卡模拟）发出指定频率和时长的蜂鸣声。与（播放系统预定义声音）不同，Beep()允许自定义声音的频率和持续时间。参数名类型描述frequencyint声音的频率（单位：赫兹，Hz）。37 Hz 到 32767 Hz。262 Hz (中音C)、440 Hz (标准音A)、1000 Hz (高频提示音)durationint声音的持续时间（单位：毫秒，ms）。正整数（如 500=0.5秒）。演示一段音符，# 定义音符频率和时长（毫秒）melody = []]></description><category></category></item><item><title><![CDATA[Python内置库之pathlib]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145567329</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145567329</guid><author>JBY2020</author><pubDate>Tue, 11 Feb 2025 11:28:32 +0800</pubDate><description><![CDATA[print(p.stat().st_atime)  # 输出最后访问时间print(p.stat().st_mtime)  # 输出最后修改时间print(p.stat().st_atime)  # 输出文件系统最后访问时间print(p.stat().st_mtime)  # 输出文件系统最后修改时间print(p.stat().st_atime)  # 输出文件系统最后访问时间print(p.stat().st_mtime)  # 输出文件系统最后修改时间。]]></description><category></category></item><item><title><![CDATA[Python+wxauto：实现电脑端微信程序自动化]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145551525</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145551525</guid><author>JBY2020</author><pubDate>Mon, 10 Feb 2025 17:46:37 +0800</pubDate><description><![CDATA[wxauto库底层使用的是uiautomation框架，进行了封装处理。安装：pip install wxauto -i https://pypi.tuna.tsinghua.edu.cn/simple/]]></description><category></category></item><item><title><![CDATA[python+playwright自动化测试(十)：自动化脚本录制]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145548015</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145548015</guid><author>JBY2020</author><pubDate>Mon, 10 Feb 2025 14:10:25 +0800</pubDate><description><![CDATA[录制命令示例：playwright codegen --target python -o E:\桌面\test_pro.py -b chromium https://www.baidu.com。]]></description><category></category></item><item><title><![CDATA[python内置库之getpass、msvcrt：密码安全输入（keyring+getpass、msvcrt实现密码安全管理）]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145545034</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145545034</guid><author>JBY2020</author><pubDate>Mon, 10 Feb 2025 11:28:46 +0800</pubDate><description><![CDATA[中介绍了使用keyring库进行密码的安全存储，但是也提到keyring库的使用可能需要用户的交互，如在首次存储凭证时输入密码或修改密码时需要输入密码，这样会是密码暴露出来。所有我们可以使用Python的内置库getpass，这个模块是用来在终端（命令行界面）中安全地获取用户密码输入的。在用户输入密码时隐藏输入内容，从而增强了安全性。对于编写需要用户输入密码的程序非常有用。]]></description><category></category></item><item><title><![CDATA[python之keyring库：安全密码管理库，不同平台service_name、username的获取]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145542979</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145542979</guid><author>JBY2020</author><pubDate>Mon, 10 Feb 2025 10:18:51 +0800</pubDate><description><![CDATA[keyring是一个Python库，它提供了一个简单的方法来访问系统的密钥管理服务，使得存储和检索敏感信息（如密码）变得更加安全和便捷。使用keyring库的好处之一是它抽象了底层密钥管理的细节，使得你的应用程序可以跨多个平台（如Windows、macOS、Linux等）一致地工作，而无需关心每个平台特定的密钥存储机制，方便测试及开发中的用户及密码管理。需要注意的是，keyring库的使用可能需要用户的交互（如在首次存储凭证时输入密码），这取决于底层的密钥管理服务实现。]]></description><category></category></item><item><title><![CDATA[adb命令对手机短信进行读取]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145517692</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145517692</guid><author>JBY2020</author><pubDate>Sat, 08 Feb 2025 17:26:05 +0800</pubDate><description><![CDATA[Android的短信存储在content provider中，通常是content://sms/inbox。可根据短信的内容、发件人号码或时间戳来筛选短息。因此，ADB命令需要包含这些条件。例如，使用--where参数来指定条件，比如address='号码'或body LIKE '%关键词%'。通过调整--uri参数可操作不同短信箱（收件箱）（已发送）（草稿箱）content://sms/all （所有短信）content://sms/outbox  发件箱（尚未发送）]]></description><category></category></item><item><title><![CDATA[python+imbox实现邮件读取、附件下载、邮件删除]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145514016</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145514016</guid><author>JBY2020</author><pubDate>Sat, 08 Feb 2025 14:15:52 +0800</pubDate><description><![CDATA[print(message.body['plain']) 输出结果是 Unicode 编码的字符串列表，而不是直接解析后的文本。返回的邮件正文内容可能是以列表形式存储的，并且可能包含 HTML 实体或 Unicode 编码。）将 Unicode 编码的字符串转换为可读文本。返回的是一个列表，你需要提取列表中的字符串。：如果邮件正文包含 HTML 实体（如。：使用 Python 的内置功能（如。可根据邮件内容或主题等进行标记。可根据邮件内容或主题等进行删除。]]></description><category></category></item><item><title><![CDATA[python+imaplib+email实现邮箱数据读取、附件下载、条件删除]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145509913</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145509913</guid><author>JBY2020</author><pubDate>Sat, 08 Feb 2025 11:28:50 +0800</pubDate><description><![CDATA[可以根据条件如邮件标题、内容等进行邮件的删除操作，注意此删除操作是真删，删除后无法在已删除邮件中找到邮件。等），或者正文内容可能是 HTML 或纯文本的多部分结构。这个错误是因为邮件的正文内容可能不是 UTF-8 编码的文本，而是其他编码格式（如。需要遍历邮件的各个部分，找到合适的正文内容。如果没有明确指定编码，可以尝试常见的编码格式（如。：邮件的正文可能包含多种编码格式，需要根据邮件的。可指定邮件时间获取对应范围内容的邮件。库提供的工具安全地解码邮件正文。：邮件正文可能是多部分结构（如。]]></description><category></category></item><item><title><![CDATA[python+playwright自动化测试(九)：expect断言和expect_xxx()元素及事件捕获]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145342992</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145342992</guid><author>JBY2020</author><pubDate>Fri, 24 Jan 2025 17:13:00 +0800</pubDate><description><![CDATA[如果提供了谓词，则传递‘ Page ’值输入‘ predicate ’函数，并等待‘ predicate(event) ’返回一个真值。context.expect_event()：指定事件触发时执行一个断言函数，并返回事件数据值。这些方法通常用在异步编程中，特别是在测试框架中，如pytest，可以帮助在测试期间等待特定的页面状态或元素状态。context.expect_console_message()：执行操作并等待‘ ConsoleMessage ’在上下文中的页面中被记录。]]></description><category></category></item><item><title><![CDATA[python+playwright自动化测试(八)：iframe切换、多窗口切换]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145337379</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145337379</guid><author>JBY2020</author><pubDate>Fri, 24 Jan 2025 10:49:12 +0800</pubDate><description><![CDATA[context.add_cookies()：将cookie添加到此浏览器上下文所在的所有页面中。context.grant_permissions()：浏览器上下文的指定权限授权。context.clear_cookies()：清除context的cookie。context.clear_permissions()：清除授权。context.pages :获取context所有page对象。context.new_page():生成一个新的page对象。context.close()：关闭context。]]></description><category></category></item><item><title><![CDATA[python+playwright自动化测试(七)：同步与异步]]></title><link>https://blog.youkuaiyun.com/JBY2020/article/details/145335397</link><guid>https://blog.youkuaiyun.com/JBY2020/article/details/145335397</guid><author>JBY2020</author><pubDate>Fri, 24 Jan 2025 10:07:28 +0800</pubDate><description><![CDATA[异步需要导入from playwright.async_api import async_playwright，使用with async_playwright()创建上下文操作对象。

代码中需要使用异步编程库asyncio中的async进行异步函数的定义，每个要执行的语句需要使用await关键字等待异步执行的结果返回。]]></description><category></category></item></channel></rss>