zoukankan      html  css  js  c++  java
  • python批量添加hexo文章封面

    本文需要工具:

    「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

    **大功告成~**✌

  • 相关阅读:
    POJ 3468 A Simple Problem with Integers
    BZOJ 4430 Guessing Camels
    POJ 2309 BST
    POJ 1990 MooFest
    cf 822B Crossword solving
    cf B. Black Square
    cf 828 A. Restaurant Tables
    Codefroces 822C Hacker, pack your bags!
    [HDU 2255] 奔小康赚大钱
    [BZOJ 1735] Muddy Fields
  • 原文地址:https://www.cnblogs.com/jscs/p/13596695.html
Copyright © 2011-2022 走看看