乐趣区

关于java:确定了今天带一个看板娘回家

💃 内容为王,但谁还不是一个颜控?

有一说一,向来我本人的站点格调都尽力放弃简洁慷慨,没有多余的功能模块,也没有花里胡哨的 css 和 js,就是简简单单的,心愿给人一种大家闺秀的感觉。但这样,难免会短少邻家小妹的秀气,宛如房间里短少绿植,少了些许灵动。于是,我决定走进来参观哈大佬们的博客,只有这样才能够让愚蠢的我找到些许灵感,进而让我的寒舍蓬荜生辉。

对不起,我看上你家的老板娘了
怀着初心,到处寻找,在 TX 交友网站「Github」停留好久,尤其是基于 Hexo 的主题更是让人目迷五色。

乱花渐欲迷人眼,浅草能力没马蹄。—— 钱塘湖春行(白居易)

为了维持现有的博客格调,天然是不能大修大改。正在迟疑时,一篇博文引起了我的留神,当然当初我曾经想不起来具体文章内容,只记得左下角有一个可可恶爱的女孩像花一样冲着我笑,还很淘气。我坦率,过后我就……霎时有了灵感。
<div>
<video src= “https://file.mynamecoder.com/live2d_api/live2d-demo.mp4″ width=”200″ height=”250” muted autoplay loop></video>
</div>

是不是很二次元!点击残缺体验 过后我猜测,这个姑娘应该是该网站的老板娘,如果把她带走搁置到我的网站,岂不是会减少些许灵气?

一见倾心,我带走了他人的看板娘
说干就干,查了相干材料,原来这个叫做 Live2D

是一种利用于电子游戏的绘图渲染技术,技术由日本 Cybernoids 公司开发。通过一系列的间断图像和人物建模来生成一种相似三维模型的二维图像,对于以动画格调为主的冒险游戏来说十分有用。

集成到网页中后,学术名叫 看板娘,hexo 官网曾经存在插件 hexo-helper-live2d,然而 5 年前就曾经进行更新,没有新的模型,不举荐大家应用。

看着看着我就关上了控制台……
<img src=”https://img.mynamecoder.com/20230310114431.jpg”/>
剖析了一下网络申请,原来看板娘分两块内容:

  • 框架
  • 模型

所以,首先咱们得先把框架集成到我的项目中,而后再将模型文件引入进来。

看板娘框架

我又在 TX 交友网站「Github」依据关键词检索了一番,发现一个不错的框架 stevenjoezhang/live2d-widget,反对的模型也很可恶,目前这个框架曾经开源,我曾经 fork。感激该作者,阐明文档也写的很全面,此处不再赘述如何应用,次要有两种集成形式:

| 形式 | 长处 | 毛病 |
| :-: | :-: | :-: |
| 间接援用 JS| 一键引入、方便快捷、节俭生命 | 不反对自定义 |
| 魔改框架✅ | 将源码下载后,魔改该框架,这样更符合你的网站 | 花点工夫了解框架 |

我当然抉择了魔改框架,因为我要为我的网站高级定制看板娘。

看板娘模型

当你看懂这个框架之后,会发现,尽管这个框架不提供模型,然而,很显著 cdnPath 就是拜访模型的门路。模型的动态资源曾经放入到 cdn 下面了,速度却还是很慢。所以,接下来,我有一个想法:把动态资源爬下来,放到国内的 cdn 上。
<img src=”https://img.mynamecoder.com/20230310215816.jpg”/>
通过剖析网络申请,发现前三个申请都是 json 格局的配置文件:

  • model_list.json是展现该模型库所有的模型列表
  • waifu-tips.json 是管制看板娘框架不同交互的提醒语,在框架中管制,不属于模型库
  • index.json指的是以后展现的模型须要哪些配置
  • 剩下的网络申请门路全副依靠于 index.json 外面的配置内容

所以,咱们能够得出结论,如果想要爬取这个模型库,那咱们按以下步骤:
<img src=”https://img.mynamecoder.com/20230310224059.png”/>
人生苦短,我用 python 写了一个脚本爬取,次要用到的库是requestsos,在写的过程中发现一个趣事:

# mkdirs 居然能够反对创立带有下级门路的文件夹
path = '/pic/../video'
os.path.mkdirs(path) # 会创立 video 的文件夹
# abspath 能够计算绝对路径,比方输出 `/pic/../video/xx.mp4`
path = '/pic/../video/xx.mp4'
print(os.path.abspath(path)) # 输入 `/video/xx.mp4`

代码我曾经上传到 github 下面,大家能够参考。这个仓库会更新一些平时写的脚本,老哥们感兴趣的话,能够 star⭐️。
通过爬取,我整顿了一下模型库,总共有 27 个模型,并将各个模型的名字也标注进去:
<img src=”https://img.mynamecoder.com/20230312225005.png”/>
模型库我曾经上传到 Githublive2d_models,举荐大家能够将这些模型都上传本人的 cdn 服务(大小 70M+,不适宜放入我的项目中),而后在 model_list.json 配置本人喜爱的模型,cdn 服务我始终用的是七牛云,一个月不到 1 块钱(可能是没什么访问量😒)
<img src=”https://img.mynamecoder.com/20230312230900.jpg”/>
速度很快,服务稳固,价格便宜,方便管理(比方防盗链等设置),当初能够点击我的推广链接进行试用。
比方,以后网站就配置了 6 个模型
<img src=”https://img.mynamecoder.com/20230313000544.jpeg” width=400 height=400/>

好啦,大家如果感兴趣能够带一个看板娘回家,如果在配置过程中遇到什么问题,能够关注微信公众号,进群交换。

本文可转载,但需申明原文出处。程序员小明,一个很少加班的程序员。欢送关注微信公众号“程序员小明”,获取更多优质文章。

退出移动版