Python
缓次郎
这个作者很懒,什么都没留下…
展开
-
【Python】用 dict 实现一个简单的 json 数据库
最近写了一个小项目,基本逻辑是通过定时任务轮询 API,检测 API 状态变化并执行对应的操作。该 API 一共有 3 种状态,假设每种状态的值分别为 1、2、3,在状态 2 的时候需要调用一次处理方法。这里的问题是状态 2 可能持续很长时间,而通过定时任务调用的 Python 脚本默认是没有记录状态的,因此需要本地保存状态。可以用SQLite或者MangoDB,但是用到这种小项目上有点多余的感觉,最轻量级的解决方法大概还是用json保存。原创 2023-11-22 18:35:58 · 265 阅读 · 0 评论 -
[Python] Pylance 插件打开 Python 的类型检查
安装 Python 插件2.打开一个 Python 文件可以看到右下角有一个花括号和 Python 字样,点击花括号(不是 Python 字样)打开类型检查即可:原创 2023-08-03 10:32:13 · 1538 阅读 · 0 评论 -
【Python】aio Queue 的超时封装
queue 的 put 和 get 操作都是阻塞的(当然可以通过 _nowait 方法改为非阻塞),取数据的时候如果没数据则会一直阻塞。下面通过计数的方法给。一般封装生产者消费者模型的时候会用到。原创 2023-07-30 21:49:50 · 249 阅读 · 1 评论 -
【Python】用装饰器限制协程并发量
from functools import wrapsfrom random import randintimport asynciofrom typing import Coroutine, Listfrom asyncio import Taskimport nest_asyncionest_asyncio.apply()def limit(max_coro): semphore = asyncio.Semaphore(max_coro) def _wrapper原创 2022-02-28 21:15:12 · 509 阅读 · 0 评论 -
使用 SCF 实现贴吧云签
白嫖 SCF 配合 Python 实现贴吧云签原创 2020-07-09 14:50:15 · 344 阅读 · 0 评论 -
协程初体验——爬取B站专栏图片
对于B站专栏这种静态网页来说,爬取图片思路的很简单:请求网页拿到 HTML解析拿到的 HTML 提取出图片链接至于协程我推荐去看 Python 官方文档,然后写几个爬虫试试差不多就明白写法的固定模式了。直接上代码:BiliArticelImgCrawler.pyimport reimport asynciofrom lxml.html import fromstringfrom crawler import Crawlerfrom config import ConfigH原创 2020-07-08 12:27:02 · 641 阅读 · 0 评论 -
爬虫模拟登录的思路
创建时间 2020年7月6日通过对 COOKIES 的分析找出登录必需的 COOKIE,剔除可能会导致登录状态失效的 COOKIE(有些过期时间短的非必要 COOKIE 可能会导致模拟登录失败)。方法并不局限于 B 站,对绝大部分网站来说都是适用的。1. 分析必需 COOKIE抓包登录接口获取返回的 Set-Cookie 值在站点信息中找 COOKIE,然后去除不必要 COOKIE 然后保存必须 COOKIE对第 2 步去除 COOKIE来说,有如下技巧:看名字看过期时间一般来.原创 2020-07-08 12:13:43 · 561 阅读 · 0 评论 -
记一次Flask中JS引用图片的坑
课设写完后准备挂到网上,正好以前写过Flask的项目,所以直接把课设文件拖到项目的static和templates文件夹里了。刚开始万事大吉,因为JS里没有引用图片,后来JS里加了个在canvas上绘图的功能,引用图片就报404了。调了半天无果,怒删项目里课设相关的文件,新开个Flask项目测试。正文先来看项目结构: run.py│└─app │ routes.py │ __init__.py │ ├─static │ └─js │原创 2020-06-01 13:41:06 · 920 阅读 · 0 评论 -
双链表 Python 实现
链表是其余链式结构的基础,一般来说链表搞懂了后面的栈和队列(只是链表加了些限定规则)也就懂了。再往后的二叉搜索树除了删除结点比较复杂之外其实其他操作(增改查)和链表的增改查都差不多。早先用 C 写过很多次链表,用 Java 也写过几次,转到 Python 就没思路了。其实套路都一样。// 结点,存数据域和前后指针typedef struct _NODE{ int item; struct _NODE *next; struct _NODE *prev;}NODE, *PNODE;// 链表原创 2020-05-28 14:04:05 · 266 阅读 · 0 评论 -
wxPython 和协程
wxPython 和协程最近写爬虫要用到 GUI,于是入坑了 wxPython,但貌似原生 wxPython 对协程的支持不是很好。遽上网搜索相关文章,然而不知道是不是由于搜索姿势不对,并没有找到相关的内容。咸鱼了一天后终于在 Google 上找到了答案——wxasync。下面是用 wxasync 撸的一个最简单的 wx 程序,如果你和我一样碰到了同样的问题,希望本篇文章能够帮到你。import asyncioimport wximport wxasyncclass Frame(wx.Fr原创 2020-05-13 21:52:43 · 409 阅读 · 0 评论