- 博客(18)
- 收藏
- 关注
原创 用平均哈希比较图片相似程度
我们经常保存图片,可能发现有些图片相同,而文件名却不一样。对于这些相同的图片,我们只保留一个即可,其他需要进行删除,减少内存占用。要比较图片是否相同,我们可以先计算每个图片的平均哈希,两者相减,值越小,图片相似度越高。
2024-05-29 08:50:55 196
原创 在python实现多个步长值生成序列
我们经常使用range(start, stop, step)内置函数快速生成一个序列,其中,step参数是一个固定的步长值,但有时候,我们需要一个序列按照多个不同的步长值来生成。对此,我们可以自定义一个方法来实现。
2024-05-27 00:43:24 202
原创 sorted函数对列表排序
sorted函数是Python内置的排序函数。它接受一个可迭代的对象作为输入,返回一个新的经过排序的列表。语法格式如下: sorted(iterable, key=None, reverse=False)注意:sorted函数返回一个新的已排序的列表,原始列表不会被修改。如果要对原始列表进行排序,可以使用列表的sort方法。
2024-05-09 08:16:44 519
原创 asyncio+aiohttp:异步下载多个文件,支持断点续传
import os# 设置协程并发量"""异步下载文件,可以实现断点续传:param url: 文件地址:param file_path: 文件保存路径:param headers: 请求头:cookie/referer等:param chunk_size: 内容块大小,单位是字节"""# 限制协程并发量# 若有重名文件,退出print(f'重名文件:{file_path}')return# 定义待下载文件的文件格式是.td# 添加用户代理# 实例化请求超时对象。
2023-12-30 23:18:37 705 1
原创 pyqt5+designer:快速实现窗口适应屏幕大小
获取窗口原来大小# 获取屏幕大小# 自定义新窗口大小resize_rate = new_window_width / window_width # 确定放大比例new_window_height = int(window_height * resize_rate) # 确定新窗口高度# 重新调整窗口大小并移动到屏幕中心# 重新调整子控件位置大小))
2023-11-26 23:20:29 3046 1
原创 python+requests实现文件下载的断点续传
将整个文件的请求内容分块进行,请求到多少块内容,就写入多少内容到文件中,直到请求的内容完整。即使因为异常中断请求,前面下载到文件的内容也能保存下来,然后在请求文件内容中断的位置继续发送请求,获取剩余内容并保存到文件中。在使用requests.get()下载文件过程中,如果出现网络异常如超时,网络请求就会被打断,前面请求的数据也会消失,浪费流量和时间。
2023-11-12 11:12:47 931
原创 python中使用ffprobe获取MP3或MP4文件时长
把bin目录添加到系统环境或直接把ffprobe.exe放到项目里即可。(复制链接到迅雷下载,下载速度更快)
2023-05-15 19:18:20 1372
原创 解决pyinstaller -w打包selenium和pyqt5出现的黑色飞窗
文件路径:Lib\site-packages\selenium\webdriver\common\selenium_manager.py。文件路径:Lib\site-packages\selenium\webdriver\common\service.py。如上图,旧版本的selenium没有creationflags参数,可以在stdin参数后面添加。的可执行文件,但在执行exe文件之后,只要程序执行到selenium模块的地方,会出现一个。修改完保存,重新打包,应该不会有黑窗出现了。
2023-04-14 20:34:26 1285
原创 scrapy使用文件管道FilesPipeline下载视频
1.爬虫文件class MeiShiSpider(scrapy.Spider): name = 'meishi' allowed_domains = ['baidu.com'] start_urls = ['https://tieba.baidu.com/f?kw=美食'] def parse(self, response): # 获取视频地址在网页的数据范围 data = re.findall(r'(<ul id="thread
2022-04-16 11:35:59 1810 1
原创 tesseract识别验证码并使用账号密码登录古诗文网
import loggingimport refrom time import sleepimport requestsfrom PIL import Imagefrom fake_useragent import UserAgentfrom pytesseract import image_to_stringclass RecognizeCode(object): """使用tesseract识别图片的验证码""" @staticmethod def filt.
2022-04-16 08:22:17 261
原创 解决matplotlib出现的异常:MovieWriter ffmpeg unavailable; using Pillow instead
1、下载ffmpeg到本地1.1、从网页下载点击https://github.com/FutaAlice/ffmpeg-static-libs/releases,进入网页,可以下载对应版本的压缩包。1.2、从百度网盘下载从网页下载网速比较慢,可以选择网盘下载链接:https://pan.baidu.com/s/1w1vHU7_gWq-T1y8WWlphdA?pwd=6f89提取码:6f892、添加到环境变量2.1 将下载到本地的压缩包进行解压,依次打开文件夹,路径D:\..
2022-02-19 13:34:18 11851 5
原创 解决matplotlib的中文和负号的显示问题
from matplotlib import pyplot as plt# Matplotlib的默认字体不包含中文,出现中文时需要自定义字体,比如黑体(simhei)或宋体(simsun)plt.rcParams['font.family'] = ['simhei'] # 解决中文显示问题plt.rcParams['axes.unicode_minus'] = False # 解决负号显示问题...
2022-02-16 11:48:13 1928
原创 通过session爬取我要自学网会员中心的账号信息
import requestsfrom fake_useragent import UserAgentfrom lxml import etreeclass Spider(object): """爬取我要自学网会员中心的账号信息 第一步:从登录界面的源码中提取token的值,用于后面发送post请求; 第二步:输入账号和密码,完善data表单数据,发送post请求,使session对象保存登录的cookie信息 第三步:发送get请求,解析会员中.
2021-08-21 15:42:05 2127
原创 在scrapy管道中使用FilesPipeline实现音频下载
1. 这里省略爬虫代码和items编写,在pipeline.py中添加如下示范代码:from scrapy.pipelines.files import FilesPipeline# 自定义一个类,继承FilesPipeline这个父类class MusicDownloadPipeline(FilesPipeline): item['url']为音乐请求地址,item['name']为音乐名 def get_media_requests(self, item, info):
2021-08-05 21:51:20 580 5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人