当前位置 博文首页 > 文章内容

    python批量添加hexo文章封面

    作者: 栏目:未分类 时间:2020-09-01 16:01:01

    本站于2023年9月4日。收到“大连君*****咨询有限公司”通知
    说我们IIS7站长博客,有一篇博文用了他们的图片。
    要求我们给他们一张图片6000元。要不然法院告我们

    为避免不必要的麻烦,IIS7站长博客,全站内容图片下架、并积极应诉
    博文内容全部不再显示,请需要相关资讯的站长朋友到必应搜索。谢谢!

    另祝:版权碰瓷诈骗团伙,早日弃暗投明。

    相关新闻:借版权之名、行诈骗之实,周某因犯诈骗罪被判处有期徒刑十一年六个月

    叹!百花齐放的时代,渐行渐远!



    本文需要工具:

    「excel」

    「python3.x」

    今天突然觉得,我的博客的文章更新这么多了竟然还没有一个封面,觉得首页相当低调了…

    首页

    正好皮肤带有文章封面功能,所以我觉得要将文章批量加上文章推图!

    1.寻找图片

    推荐大家一个网站:https://www.pexels.com/

    找到你想要的页面:

    然后无脑ctrl+s….:

    按照类型分组然后将jpeg或者你想要的文件留下,

    全选按f2

    输入tuiutu

    按一下enter

    叮叮:

    这还没完,因为文件中有空格,所以再批量改个名:

    A组是原来文件名,B组为改之后的文件名

    「注意:一定要加引号」

    C1填写函数:

    ="ren "&A2&" "&B2
    

    然后拉下来,复制到txt里,改成bat然后按一下就修改成功啦!

    最后将图片上传到你的图床。

    2.批量添加cover属性

    因为hexo的文章是运用markdown书写,相当灵活。

    观察每篇文章:

    我们只需要在上面插入cover: XXXX,就可以设置好封面了。

    因为本人的博文虽然不多,但也将近50篇,所以打工肯定是不可能打工的

    观察每篇文章的title和三个横线之间的格式都是不变的,

    所以我们只需要运用强大的vs以及正则化批量替换:

    正则化代码:

    搜索:
    ---
    title:
    替换:
    ---
    cover: https://图床.com/tuitu[wodeitihuan].jpg
    title:
    

    注意,[wodeitihuan]不能少,等会要运用python批量替换。

    3.批量替换cover图片

    还记得[wodeitihuan]嘛?

    现在他派上用场了

    打开你的python(别说你没有奥!)

    修改并输入以下代码

    import os
    import io
    import re
    file_dir = 'E://sd//blog//1' #你的文章地址
    num=0


    def batch_replace(file,num):
        print('filename:%s' % file)
        num=str(num)
        content = ""
        strinfo = re.compile('[wodeitihuan]')
        with io.open(os.path.join(file_dir, file), "r", encoding="utf-8", errors='ignore') as f:
            for line in f:
                line = strinfo.sub(num, line)
                
                content += line
        with io.open(os.path.join(file_dir, file), "w", encoding="utf-8", errors='ignore') as f:
            f.write(content)
    # 遍历目录下文件

    for folder, subFolder, filenames in os.walk(file_dir):
        print(file_dir)
        for filename in filenames:
            # 以 .md 结尾的文件
            if os.path.splitext(filename)[1] == '.md':
                # 执行域名替换
                print(os.path.splitext(filename)[1])
                num=1+num
                batch_replace(filename,num)
                print("{} 替换完成".format(filename))

    ok,打开文章后你会发现每个cover的链接都变成了:

    https://图床.com/tuitu「某个数字」.jpg

    **大功告成~**✌