本地实现类似bilibili漫画,浏览器看漫画,python自动生成

一般从nyaa等网站下载得到的漫画、轻小说等资源都是像这样图片的格式,而是用系统自带的图片浏览器观看时,翻页、缩放等都非常麻烦,效果并不好。

但是可以看出,一般文件名都比较规律,从000~999这样。

其实看漫画最好的方式,漫画网站已经给我们答案了,就是在浏览器上用鼠标滚轮往下翻(bilibili漫画),下面提供一种使用HTML、Python实现的思路。

HTML代码

<html>
<style>
    div {
        margin: auto;
        width: 900px;
    }

    img {
        width: 95%;
    }
</style>

<body>
    <div>
        <img src="./manga 01/00001.jpeg">001
        <img src="./manga 01/00002.jpeg">002
        <img src="./manga 01/00003.jpeg">003
</body>

</html>

效果如图。可以一滚到底。

在图片旁边加上数字,一来可以查看页码,最重要的是可以用CTRL+F来搜索页面来实现快速跳转。

Python实现

接下来的问题就是如何批量生成HTML代码。毕竟一部漫画得有几百页,不能用手输。

# src, file_type, output, strat, finish
data = [
    ["./Made in Abyss v01/", ".jpg", "Book_01.html", 1, 169],
    ["./Made in Abyss v02/", ".jpg", "Book_02.html", 0, 165],
    ["./Made in Abyss v03/", ".jpg", "Book_03.html", 0, 164],
    ]
for d in data:
    src = d[0]
    file_type = d[1]
    output = d[2]
    strat = d[3]
    finish = d[4]
    with open(output, 'w', encoding='utf-8') as f:
        f.write("<html><style>div {margin: auto;width: 900px;}img{width: 95%;}</style><body><div>")
        for i in range(strat, finish):
            f.write("<img src=\"" + src)
            f.write("%03d" % i)
            f.write(file_type + "\">")
            f.write("%03d" % i)
        f.write("</div></body></html>")

data 数组中分别存有文件名前半、文件名后半(图片类型)、生成HTML的文件名、开始页码、结束页码。

比如 "./manga 01/00002.jpeg"这个路径,可以分为 "./manga 01/00""%03d" % 2".jpeg" 三部分。

注意这里文件一定要用 encoding='utf-8' 模式打开,不然遇到汉字就会报错。

运行后便可批量生成,不用手动输入了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值