清理Typora(md文档)未被引用图片

发现删除Typora中的图片后,assets中依然还有被删除的图片,临时写一个工具,如果有需要的可以自己改改代码

Typora图片存储规则如下

因为用这种规则使用i5ting_toc将md转成HTML时,直接将assets文件扔到生成的项目中,就可以直接在HTML中显示图片

文件名:CliManual.md

图片格式如下:

![image-20230912171855788](CliManual.assets/image-20230912171855788.png)

Python代码

FILE_NAME 改成自己文件名称即可

import re
import os 
import glob

# md文档名称 FILE_NAME
FILE_NAME = "CliManual"
whole_file_name = "./"+ FILE_NAME + ".md"
assets_name = "./"+ FILE_NAME +".assets/"

# 定义一个set,放置图片地址
img_set = set()
text = ""

# 读取文件 匹配图片名称
with open(whole_file_name,"r",encoding="utf-8") as f:
	text+=f.read()
pattern = r'\!\[\w+?\-\w+?\]\((.+?)\)' 

for matche in re.findall(pattern, text):
	
	img_set.add("./"+matche)

# 获取存储这个md文档图片文件夹下所有图片名称
print(assets_name)
file_list = glob.glob(os.path.join(assets_name, '*'))
exit_file_set = set()
for item_file_name in file_list:
	exit_file_set.add(assets_name+os.path.basename(item_file_name))
	
del_pic_set = (exit_file_set-img_set)
for del_file_name in del_pic_set:
	os.unlink(del_file_name)
	print("已删除图片"+del_file_name)
if(len(del_pic_set)==0):
	print("无未被引用图片")
else:
	print("完成!本次共清理图片%s张未被引用图片"%(len(del_pic_set)))

文件如下

执行命令如下

py cleanPic.py

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值