大家在学习的时候,经常会碰到这样的情景,手头有一堆命好名字的图片,我需要按照名字把图片给记忆下来,于是我们想到了神奇的记忆工具—Anki,但是发现anki导入图片只能在一张张的单张进行,对于我们无需对图片进行加工的同学十分不友好,于是昨天仔细研究了一波通过Html链接批量导入图片的方法,希望对大家的学习能够起到一定的帮助!
一、素材准备
在准备我们图片的时候我们可能会出现几个问题。
Q1: 图片分散在各个文件夹之中,拉出来时间成本极大
解决这个问题的方法有很多,这里我推荐使用python,只需要简单几行代码就能轻松解决我们批量处理文件夹文件的难题。
#coding = UTF-8
import os
import shutil
path = 'C:UsersDesktopbuild' #原文件夹路径
new_path = 'C:UsersDesktopnewfile' #新文件夹位置
files = os.listdir("C:UsersDesktopnewfile") # 列出当前目录下所有的文件
for root, dirs, files in os.walk(path):
for i in range(len(files)):
# print(files[i])
if (files[i][-3:] == 'jpg') or (files[i][-3:] == 'png') or (files[i][-3:] == 'JPG'):
file_path = root + '/' + files[i]
new_file_path = new_path + '/' + files[i]
shutil.copy(file_path, new_file_path)
Q2:怎么把图片中的各个文件名称批量提取出来?
这里依旧推荐使用python,代码如下:
for filename in os.listdir(r"C:UserswenweiDesktopnewfile"):
if filename.endswith('png') :
print(filename)
因本人python小白,所以代码部分大家看看就ok,主要提供一个思路。以上代码只需要简单修改文件夹路径就可以直接复制使用(py版本:3.5.1)
通过以上操作,我们就可以把分布在各大文件夹的图片全部导入到一个新的文件夹,并且得到这些图片的名称。
二、导入文件制作
因为anki支持的导入方式只能是文本格式的,所以接下来我们需要使用excel进行html代码的编写(很简单!一定要看下去)
首先,我们把我们获得的文件名称导入到excel中的第一列,导入后因为名称是带后缀的,但是这个后缀我们并不需要,所以使用ctrl+H替换功能把后缀删除,这里用.*的方式
替换完成之后我们进行html获取图片的代码,其实就是一行代码直接复制就可以了,但是因为每个文件名称都不同,我们要分行处理,然后进行组合。
第一行保持名称
第二行统一写入
<
第三行统一写入
.png"/> #这里要根据你图片的格式进行修改
第四行来组合html
=B1&A1&C1
然后我们把第四行复制出来,然后新选一行,选择粘贴值,然后删掉辅助的内容,变成只有两行的格式即完成操作。
三、导入Anki
我们把制作好的excel文件另存为txt文本格式,这里不需要考虑excel的编码的方式,导出之后用记事本打开导出的txt,选择另存为,这时这里会出现这个按钮,我们把它修改成UTF-8即可开始导入。
导入的时候按照正常导入逻辑导入即可,但是请务必勾选允许在字段中使用html这个按钮,否则功亏一篑!
到这里基本就完成了我们的导入,但是在开始复习时我们会发现图片并没有加载进来,这时我们要找到anki用户文件夹把图片复制进去即可。
C:UserswenweiAppDataRoamingAnki2城市规划collection.media #默认文件夹位置
然后把卡组导出(导出时一定要导出媒体),重新导入后,就可以把anki用户文件夹里的图片删除了!
大功告成!
欢迎加入Anki城市规划考研,群聊号码:750310398