当前位置: 首页 > news >正文

【Python】批量将PDG合成PDF,以及根据SS号重命名秒传的文件

目录

  • 说明
  • 批量zip2pdf
  • 批量zip2pdf下载
  • SS号重命名源代码
  • SS号重命名源代码下载
  • 附录,水文年鉴

说明

1、zip2pdf是一个开源软件,支持自动化解压压缩包成PDG,PDG合成PDF,笔者在其基础上做了部分修改,支持批量转换。

2、秒传的文件是有一部分是根据SS号命名的,下载量大的话修改起来会十分麻烦。可以根据查询接口,读取SS号对应的书名,重命名本地文件。

批量zip2pdf

单文件模式(输入1)即原版模式,多文件模式(输入2)即自动读取目录下的压缩文件,逐一转化,避免手动输入。
在这里插入图片描述

批量zip2pdf下载

下载链接

SS号重命名源代码


def get_book_name(ss_id):# 设置请求头header = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 Edg/119.0.0.0"}# 构造请求的URLurl = f"https://api.xxxxxxxx.com/search?category=duxiu&q={ss_id}"# 发送GET请求并获取响应response = requests.get(url, headers=header)# 初始化name变量为Nonename = Nonetry:# 解析响应的JSON数据,获取书名name = json.loads(response.text)["books"][0][5].replace(",", " ")except Exception as e:# 如果出现异常,打印异常信息print(e)# 等待1秒time.sleep(1)# 返回书名return namedef export_get_book_list(pdf_path):file_name = ""for f in glob(f"{pdf_path}/*.pdf"):p = Path(f)raw_name = p.name.replace(".pdf", "")file_name += f"{raw_name}\n"with open("file_name.txt", "w") as f:f.write(file_name)if __name__ == "__main__":pdf_path = Path.cwd() / "pdf"for f in glob(f"{pdf_path}/*.pdf"):p = Path(f)ss_id = p.name.replace(".pdf", "")raw_name = get_book_list(ss_id)# 增加汉字年raw_name_lst = raw_name.split(" ")raw_name_lst = list(filter(None, raw_name_lst))if "年" not in raw_name_lst[1]:raw_name_lst[1] = raw_name_lst[1] + "年"new_name = " ".join(raw_name_lst)print(new_name)p.rename(f"{new_name}_{ss_id}.pdf")

SS号重命名源代码下载

点击下载

附录,水文年鉴

笔者导出了数据库里面所有水文年鉴,当前版本的数据库包含的水文年鉴,大约总共200多本,且主要为1988年之前的黄河流域水文年鉴。
在这里插入图片描述

http://www.lryc.cn/news/241798.html

相关文章:

  • 2023亚太杯数学建模A题思路 - 采果机器人的图像识别技术
  • 3、LeetCode之无重复字符的最长子串
  • CONDITIONS EVALUATION REPORT-解决方案
  • 计算机网络——路由
  • python+requests+pytest+allure自动化框架
  • css3
  • 超级应用平台(HAP)起航
  • cocos2dx ​​Animate3D(二)
  • 基于java技术的社区交易二手平台
  • (Matalb回归预测)GA-BP遗传算法优化BP神经网络的多维回归预测
  • 【Docker】从零开始:10.registry搭建私有仓库
  • 树莓派上使用Nginx通过内网穿透实现无公网IP访问内网本地站点
  • 长征故事vr互动教育体验系统让师生感同身受
  • 汽车级芯片NCV7518MWATXG 可编程六沟道低压侧 MOSFET预驱动器 特点、参数及应用
  • 【分布式】小白看Ring算法 - 03
  • 使用Git bash切换Gitee、GitHub多个Git账号
  • 【RtpRtcp】1: webrtc m79:audio的ChannelReceive 创建并使用
  • Ubuntu系统安装docker
  • 如何访问linux上的web服务
  • Vatee万腾的数字化掌舵:Vatee科技解决方案的全面引领
  • YOLOv5 第Y6周 模型改进
  • Unity Android FireBase bugly报错查询
  • React中如何解决点击<Tree>节点前面三角区域不触发onClick事件
  • 如何利用4G路由器构建茶饮连锁店物联网
  • 【2024系统架构设计】 系统架构设计师第二版-大数据架构理论设计与实践
  • 正整数分解
  • 基于51单片机电子钟闹钟LCD1602显示proteus仿真设计
  • 第三节-Android10.0 Binder通信原理(三)-ServiceManager篇
  • 使用XHProf查找PHP性能瓶颈
  • 矩阵论(Matrix)