没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

2017-07-16 23:30:36 64点赞 552收藏 77评论

Anki是什么?

Anki是一个记忆软件,它可以帮你建立自己的学习库,辅助学习和记忆,让学习更加快速和开心。它怎么用?各位可以参考下边的资料。


Anki(知识记忆工具) - 热门问答 - 知乎Anki 怎么用?519个最新问答,点击查看更多>>www.zhihu.com去看看

Anki现在有PC/Mac/Linux版本(免费),Android版本(免费),IOS版本(¥160),大家可以根据自己的需求下载使用。今天我们要说的是,怎么样使用Anki建立自己的英语单词学习库。

我们想要的Anki卡片

比如下边的内容,我想把它变成可以使用的卡片

新概念英语 第一册 共793词

--------------------------------------------------------------------------------

序号 英语 词性 汉语
asffada

1 excuse n. 借口,理由;低劣的样品; v. 原谅

2 me pron. 我(宾格)

3 yes a. 是的; ad. 是,是的; v. 是

4 is v. 是

5 this a. pron. 这,这个

6 your pron. 你的,你们的

7 handbag n. 手提包

8 pardon n. 原谅,赦免; v. 宽恕,原谅

9 it pron. 它

10 thank you 谢谢你。

11 very much 非常地

12 pencil n. 铅笔; v. 用铅笔写

经过我们的处理,这样看似杂乱的单词就变成了一张张的学习卡片

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

这个卡片带图片,真人发音。看起来不错啊,心痒痒?让我们开始这段感情吧(划掉)

Windows 下使用

安装Chrome

使用搜索引擎可以找到,因为狗歌被墙,推荐翻不了的同学去新浪下。

Python

去官网 下载widows 版本的python 3.6,windows 如下勾选:

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

注意一定要勾选Add Python 3.6 to PATH,不然的话下边的操作会出错。

安装完成以后,按windows 开始按键,在搜索栏里输入cmd(或powershell),运行后,在弹出的命令行界面里输入

pip install splinter urllib3

等待安装完成,Python就准备好了

下载Chromedriver

ChromeDriver 因为众所周知的原因,无法从官网下载,国内最方便的是淘宝的镜像

Windows 下载chromedriver_win32.zip ,把 文件放到python在的目录里

然后在cmd 里输入chromedriver 应该有如下输出:

Starting ChromeDriver 2.29.461591 (62ebf098771772160f391d75e589dc567915b233) on port 9515
Only local connections are allowed.

如果输出是

'chromedriver' 不是内部或外部命令,也不是可运行的程序或批处理文件。

则说明你的chromedriver放错了路径

语音文件

142000个英语单词语音库,把下边的链接使用下载工具(迅雷,QQ旋风)下载后解压到任意目录

ed2k://|file|%5B142000%E4%B8%AA%E5%8D%95%E8%AF%8D%E8%AF%AD%E9%9F%B3%E5%BA%93%5D.voice.rar|626969546|C46A52B3C3B4547362C517A2DD900D83|h=JHHGU6I5WULQFESTUBJE4CSNEENVRRNU|/

ed2k://|file|%5B142000%E4%B8%AA%E5%8D%95%E8%AF%8D%E8%AF%AD%E9%9F%B3%E5%BA%93%5D.voice.iso|391057408|9c917c36c920d4cb427dd72e1be72c90|h=MXKMCTCXQW7XOYOCE2YQ5QJCQRB6LFKI|/

开始抓取

拿到抓取脚本点击:

bing2anki.py

然后在页面的raw上右键

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

链接另存为,把脚本保存下来,记下路径。脚本能够处理的输入单词格式参考下边:

word #ok word
1 word #ok word
单词 word #ok word
单词 word n. thank you #ok word, n. and following rejected
单词 word CET4 #ok word, CET4 rejected
单词 thank you , word #NOT ok, phrase "thank you" accepted "," and following rejected
单词 word CET #NOT ok, phrase "word CET" accepted
CET 单词 word #NOT ok, CET accepted, all following rejected

就是说,如果你是单独的单词,只要它在一行的第一个英语单词出现处,后边有空格,然后跟什么垃圾数据都没关系。如果是短语,整体要求和单词一样,短语内用空格分隔。你把需要查的单词保存在文件里就可以了。


使用脚本抓取

按windows 开始按键,在搜索栏里输入cmd(或powershell),运行后,在弹出的命令行界面里输入

cd /d Pathtoyour bing2anki

type words.txt |python bing2anki.py PathtoVoice

其中Pathtoyour bing2anki是你下载的脚本文件所在的目录,words.txt 是你的需要查询的英语单词列表, PathtoVoice 是你语音文件所在的目录,怎么查看文件究竟在哪里啊?看下图,在文件名上点右键,属性,找到位置,把它选中复制下来,在命令行里右键粘贴就行了

反斜杠如果被大妈吃掉见图反斜杠如果被大妈吃掉见图

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

现在开始,你可以去泡杯茶,看下张大妈有没有新的优惠信息,因为抓取需要一定的时间,原因是webdriver开启天量的短链接,如果不限制抓取速度,会有可能耗尽操作系统端口(操作系统:我能怎么办,我也很绝望啊),故限制抓取速度为一个单词5秒左右,完成以后脚本会自动退出。

脚本做了什么

这个脚本是我自己写的,基本原理就是把你需要查找的单词,发送给微软Bing,然后获取它的解释,并获得它的图片,再根据本地的语音文件生成anki可以识别的模板格式,然后再导入到模板里。

这个脚本可以自动化你每一个查词的动作,用不着自己再一个个输入到词典里,几千单词卡片只需要一个小时就能制作完成。运行时,脚本会操作chrome 自动查询和获得结果,如图:

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

看着像是人工输入,其实是脚本在操作。这样一来你都不知道坐在对面屏幕的是一条狗还是个脚本。

导入卡片到Anki

安装anki并导入模板

官网下载以后安装,然后进入 anki。

下载下边的模板

单词卡片模板__1 Recite.apkg

双击导入到anki里

导入你的词库

使用anki的菜单:文件->导入,选中anki_bing.txt,点击打开

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

然后在导入选项里选择:

类型:单词

记忆库:按你的要求选

点击 区域分隔由间隔:,在弹出的框里输入 |

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

点确定以后,选中“允许在字段中使用HTML”

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

媒体文件

虽然导入完成了,但是我们的媒体文件需要存放到anki目录里,不然的话anki是显示不了图片和声音的,在windows(地址栏中输入)%AppData% ,找到anki2文件夹,找到你的用户(默认:用户1)目录下有一个 collection.media目录,刚才脚本生成的anki_media目录下有很多发音文件和图片,把它们全部复制过来就大功告成了。

分享到anki share deck

到ankiweb注册用户以后

在anki里点右上角那个圆圈登录,登录以后,可以再点一次同步你的资料到anki web ,然后到anki web 网站上,你就可以看到自己的资料,点share my deck 就可以很轻松的共享到anki

Mac/Linux用户

Chrome

推荐去新浪下载

Python3

Mac下没有实验,从官网下载默认安装应该问题不大

Linux 下打开终端使用(???用Linux 的同学应该知道怎么处理)

sudo apt-get install python3

依赖库:

Mac 下按下Ctrl + Space 调出spotlight(或点击Finder右上角调出),在输入框里输Terminal,运行终端,在终端里输入:

sudo pip3 install splinter urllib3


Linux 命令同上

Chromedriver

从taobao的 Mirror下载chromeDriver

解压以后放在你能找到的目录下或家目录下,然后进入终端,输入:

chmod +w ~/.bash_profile
vi ~/.bash_profile

进入vi以后按i键进入编辑模式,把光标移到最后(使用上下左右键移动)

添加两行:

PATH=$PATH:/path/to/your/chromedriver


export PATH

按esc ,然后输入:wq 回车以后退出vi

Linux 下操作类似,只是修改的文件要换成~/.bashrc

修改文件以后,重新进入terminal,输入chromedriver 未报错就可以认为成功了。

抓取

打开终端,输入

cat words.txt | python3 bing2anki.py /path/to/voice

words.txt 是你需要生成卡片的单词列表,/path/to/voice是你解压的voice文件夹目录

如果你的words.txt是gbk的,则有可能出现以下错误:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd0 in position 0: invalid continuation byte

把命令改成

cat words.txt | iconv -c -f gbk -t utf-8 |python3 bing2anki.py /path/to/voice

媒体文件

Mac Anki2目录(Command+shift+G然后输入)

~/Library/Application Support/Anki2/

然后找到:你的用户/collection.media 目录,把媒体文件复制过来

Linux Anki

~/.local/share/Anki2

广告时间

我制作了一些卡片,分享在Anki 上,大家如果需要可以下载:

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库

最后祝大家的单词背得SixSixSix.

没有什么能够阻挡我对学习的向往:建立自己的Anki单词卡片库


展开 收起
77评论

  • 精彩
  • 最新
  • anki使用者前来报告:流氓大叔把ANKI复杂化了,哪有他搞的这么复杂,哪有那么麻烦的操作,哪有这么一头雾水的说明!anki是一个神器,一个简单的学习神器,安装也非常的简单,不必要专门去制作单词背诵词表的,稍微懂点英语就知道,你可以很方便的学习和操作,就算不懂,你可以去老余的知乎专栏学习。建议没有使用过anki的人跳过这个文章,直接去学习老余的操作。说真的你错过这个程序就太可惜了,最后再郑重的说一遍,这个程序不只是拿来背单词,不只是拿来背单词,不只是拿来背单词,可以用的地方太多了!!!!

    校验提示文案

    提交
    是的,anki使用按你说的最好。这个是制作批量单词卡片用的操作步骤,你要是有这种需要可以一步一步按照操作,不需要懂。我的这种需求没人能满足就自己搞的,分享出来。

    校验提示文案

    提交
    不要理会这种自以为是的沙子。楼主做得非常不错。自己不懂还乱说。

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 没出国,非英专,没背单词表,就天天看纪录片公开课美剧新闻podcasts,audiobooks各种童书也不放过.testyourvocab:27k。我用anki的,但只做采集用,使的次数很少。我觉得不如当时脑补一下情景感受深,还学到很多语料。主要是学起来很愉快(这才只是美国高中生的词汇量)。比如犯贱拔指甲上的肉刺都会想想怎么描述google老外怎么做,而不是去百度有道,然后再数落自己一顿,就都会用啦。

    校验提示文案

    提交
    佩服!很牛啊。学习终有回报的

    校验提示文案

    提交
    这不牛的。因为我是超级没毅力的人,记性也不好。但是我会看大量的nonfiction用来指导自己的生活。所以我会按符合大脑认知(不是规律。说规律你们又以为是spaced-repetition)。美国佬要背gre,那是背高阶文学词(还是看书少而且单一的老美)。真正爱看科普片的nerds从来不觉得科技词难。喜欢写作的也不会觉得高阶文学词抽象。至于esl英语学习者,那常用10k词,还特么不是来自于生活百科么。觉得自己很机智会算账的都跟自己说“我先混个脸熟”,回头还得大把时间用在应用上。而多数人连应用都想不到,就是刷刷刷。真把自己当参赛spelling bee的了。

    校验提示文案

    提交
    收起所有回复
  • 虽然没看懂,但是为了你这种精神也要给你打赏的,让你知道,你的付出是有人认可的。加油!

    校验提示文案

    提交
    感谢!其实不用看懂,有需要时一步步做下来就行了

    校验提示文案

    提交
    收起所有回复
  • 我也喜欢英语,受益匪浅

    校验提示文案

    提交
    能有所帮助就太好了

    校验提示文案

    提交
    收起所有回复
  • 还是老余比较踏实,这太复杂了……求电子版红宝书

    校验提示文案

    提交
    啊,这个太容易处理了吧。。。就是抓取要点时间而已

    校验提示文案

    提交
    收起所有回复
  • 太复杂了,放弃了

    校验提示文案

    提交
    其实做一下就好了,你自己输入的东西只有几下,要是用来手工做的话,一周都不一定能做好一本单词书的容量

    校验提示文案

    提交
    收起所有回复
  • 妈妈再也不用担心你的学习了

    校验提示文案

    提交
    这个脚本是我给我家孩子们弄的,因为找不到好的背单词源,所以就自己弄了一个

    校验提示文案

    提交
    孩子是否兴趣入手会更好,英文动画片

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 不爱学习的我 看半天 也没明白 到底是干啥的…… [损失几个亿]

    校验提示文案

    提交
    怪我没说清楚喽,要是没有用过anki是比较难以明白。因为anki需要制作卡片,单词卡片比较统一,可以一次制作批量的,所以就有了这种方法了

    校验提示文案

    提交
    收起所有回复
  • 技术贴 用下试试

    校验提示文案

    提交
    有问题可以提出来交流

    校验提示文案

    提交
    收起所有回复
  • 每天打开电脑学习,不如随时随地用手机解决的畅快

    校验提示文案

    提交
    这只是制作卡片,制作完成以后可以同步到手机上,想怎么用怎么用

    校验提示文案

    提交
    收起所有回复
  • 高级玩家就服你 正好要背单词 支持了

    校验提示文案

    提交
    能有所帮助是最好了

    校验提示文案

    提交
    收起所有回复
  • 这个支持其他语言吗?如德语法语的单词

    校验提示文案

    提交
    德语和法语的可能就得把过滤词功能去掉,这样的话你的输入必须纯是词汇不能夹杂

    校验提示文案

    提交
    另外,德语的网站和必应词典不一样,需要重写取数据规则。其实这个脚本你自己可以研究下,弄明白了可以去脚本抢票,抢单,秒杀都没有问题的。。。

    校验提示文案

    提交
    收起所有回复
  • 囧 还是觉得使用成本有点高,另外@败家姑娘 你萌两个什么关系呀~

    校验提示文案

    提交
    哇塞,原来还有败家大叔?好像还有败家爷们~败家。。 [皱眉]

    校验提示文案

    提交
    成本不高啊,一次操作,千次使用。跟别人家的姑娘真没关系

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 感谢作者,评论要有爱!

    校验提示文案

    提交
    爱你哦, [大妈三宝] [亲亲] [么么哒] ,字数字数

    校验提示文案

    提交
    收起所有回复
  • 这个真不错 正需要呢

    校验提示文案

    提交
    能有所帮助就太好了,另外今天必应词典的图片是挂了吗?

    校验提示文案

    提交
    收起所有回复
  • Python3.5x64行吗?

    校验提示文案

    提交
    可以的,只要3.x就好

    校验提示文案

    提交
    老哥你的摇摇杯出了吗

    校验提示文案

    提交
    收起所有回复
  • 大神还在吗?'chromedriver' 不是内部或外部命令,也不是可运行的程序或批处理文件,路径是和python放在一起的这该怎么办呀

    校验提示文案

    提交
    不好意思 ,这两天没上,你看一下环境变量那一块。如果是和python放一块的,那python的路径是不是在PATH环境变量里呢?

    校验提示文案

    提交
    收起所有回复
  • 为什么我运行以后光查询不写入啊??

    校验提示文案

    提交
    先查一个单词试试

    校验提示文案

    提交
    收起所有回复
  • 老大这个太棒了,能否给一个不查bing词典,只制作第一字段(单词)和发音字段的python代码分享一下,谢谢!

    校验提示文案

    提交
    这个用excel就能搞定的。。。

    校验提示文案

    提交
    关键是要能够根据文本列表把发音库查到的音频文件复制到一个文件夹,然后写一个可以导入发音字段的TXT文档,你那个代码怎样修改才能做到?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 你好,请问语音库可以再分享一下吗,迅雷下载失效了

    校验提示文案

    提交
    可以下载的,你试一下把两行都复制进去呢

    校验提示文案

    提交
    收起所有回复
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
552
扫一下,分享更方便,购买更轻松