ターンBASE64に埋め込ま値下げローカルの画像
出版値下げブログの記事の時点でパーク、あなたの記事は、ローカルの画像を大量に含まれている場合は、ドラッグ&ドロップ画像を(画像転送ローカルネットワーク絵)非常に面倒になります
私のアプローチは、解放することができBASE64に埋め込まれたローカルの画像にマークダウンし、次にコピーして、庭のブログ値下げエディタに直接貼り付けることです
さりげなく書かれた、光スプレー
import base64
import re
def phtot_base64(address):#将地址为address的图片转为base64字符串
with open(address,"rb") as photo:
pb=base64.b64encode(photo.read())
return str(pb)[2:-1]
target=input("请输入目标markdown文件地址");#例如:"D:\Markdown\Note\Machine learning\误差与噪音.md"(两侧有引号,这也就是你选中md文件,然后shift+右键,复制路径得到的结果)
target=target.replace("\\","/")
target=target[1:-1]
with open(target,"r",encoding="utf-8") as md:#打开目标文件
transformed=open(target[0:-3]+"_transformed.md","w",encoding="utf-8")#在目标文件同一文件夹地址下产生转换后文件
for a in md:
if(re.search("!\[[^]]*\].*",a)):#匹配到图片格式
address=re.search("(?<=\()[^\)]*",a).group().replace("\\","/")#提取图片地址并且将反斜杠转换为斜杠
if not(re.match("data",address) or re.match("http",address)):#确定是本地图片
temp="![avatar](data:image/png;base64,"+phtot_base64(address)+")"#将图片格式转为base64格式
a=re.sub("!\[[^]]*\]\([^)]*\)",temp,a)#替换base64格式图片到源字符串
transformed.write(a)#写入一行
transformed.close()