根据Img_link_to_local_markdown 修改🛠️
本代码将扫描给定文件夹下所有的markdown文件,对于每个markdown文件搜寻在线图片链接,下载对应的图片并替换文本中的链接为本地图片路径。
-
支持
<img>
和![]()
两种标签以及更多格式 -
添加了选项功能,能够自由定制程序的操作(例如是否修改md源文件)
-
以Python Async模式下载图片,可大大减少运行时间:
普通模式 协程模式 28.420s 5.236s -
下载图片将根据不同markdown文件名创建新的文件夹储存
-
支持markdown文件的递归遍历搜索
-
保存图片和链接之间的字典关系,能够使该程序自动检查并下载未下载的图片,也可重新运行该程序以只检查并下载未下载的图片。
-
转换所有的绝对路径文件到相对路径文件
-
支持自定义添加测试样例以测试markdown文件是否能够正确转换
-
用户友好的使用方式
- 安装Python
- 在Github
直接下载或者克隆本项目
git clone https://github.com/YellowAndGreen/Md-ImgLocalize.git
- 安装aiohttp:
pip install aiohttp
- 可直接运行
python localize.py
来下载图片 - 如果需要自定义该程序,切换到本项目路径并运行
python localize.py --md_path=[markdown文件目录]
,其中的额外参数有:- 指定
--md_path
作为源markdown文件目录 - 添加
--log
来保存完整运行日志,如果使用此参数则屏幕上不会有输出 - 添加
--modify_source
来直接修改源文件 - 使用
--coroutine_num
来指定协程数量,如果不需要使用协程,可设置为1 - 使用
--del_dict
来删除all_img_dict.json
- 使用
--relative
来转换所有的绝对路径到相对路径,使用此选项则不会进行图片下载
- 指定
- 使用测试功能则需要运行
python localize.py --test
。所有的测试样例均保存在test_case
文件夹中,添加单个图片样例请直接修改test_single/test_single.md
文件,添加一整个测试文件夹请添加到test_folder
下
- 协程功能
- 循环遍历
- 重新下载失败图片
- 删除生成的dict
- 绝对路径转换为相对路径
- 添加测试样例
- 添加github actions
- 网页版功能