首页 >>  正文

anki下载官网

来源:baiyundou.net   日期:2024-07-04

作者:拉德布鲁赫信徒

引言

今天无意中翻出了早些年考研时候制作的那些卡片,感概颇多。当初也是被ankiweb服务器的龟速同步速度折磨的不轻。想想一晃眼也好些年过去了,这款软件在当时确实也是给予了我极大地帮助,眼瞅着考研在即,想着如果还能有考研的值友们看到这篇文章,拿来做做卡片背一背肖四肖八的内容也是极好的。

这篇文章没有太多功利性的内容,也默认看的朋友已经能够使用anki进行背诵学习,所以图片方面的内容几乎就是没有了。在此也特别想感谢当年帮助过我一位技术小哥,当初买的香橙派zero,伴随了我考研的始终。当初他一手帮我部署好拿来就用的,也没有收过我一分钱费用,虽然不知道您的名字且再也联系不到您,还是想表达一下深深的感谢。同时写这篇文章也是想在某种意义上帮助正在奋斗在考研战线上的朋友们。

关于linux方式的部署,主要借鉴了之前一位老哥的文章,并且获得了他的同意转载了这部分的内容(在此深表感谢)。关于docker的部分是依据github上面的内容整理归类所得。

需要注意的一点是,linux的部署方式应当是可以支持各类arm设备的,但是docker方式的部署作者已经标明只支持x86架构的设备。

1 ankisync同步服务器搭建

1.1 linux方式

1.1.1 安装 Python3.9 版本和 Git

经过测试,在python3.10环境下安装会报出如下错误:

Ignoring importlib-metadata: markers 'python_version >= "3.8" and python_version < "3.10"' don't match your environment

Ignoring zipp: markers 'python_version >= "3.8" and python_version < "3.10"' don't match your environment

因此,推测该服务的运行依赖的就是python3.9,因此为了保障服务的成功部署,还是得安装python3.9的版本。

ubuntu安装python3.9

sudo apt-get install software-properties-common -y  

sudo add-apt-repository ppa:deadsnakes/ppa  

sudo apt-get update  

sudo apt-get install python3.9

验证一下安装:

python3.9 --version

pip3.9 --version

需要注意的一点是,如果机器本身就是python3.9,那就无需指定python版本,在后续的指令中,按照示例使用python3即可,pip也是同理,示例如下:

python3 src/ankisyncctl.py adduser aspirantzhang

pip3 install wheel

如果设备本身的版本低于3.9或者高于3.9,那么所有与python相关的都要指定版本号:

python3.9 src/ankisyncctl.py adduser aspirantzhang

pip3.9 install wheel

以此类推。

安装git 

sudo apt update

sudo apt install git

验证git

git --version

如果成功显示,那么证明git已经安装成功。

1.1.2 安装pip

apt install python3-pip

1.1.3 使用pip安装wheel

wheel 这个模块貌似是 anki 同步服务器的一个安装基础,通过 pip 安装

pip3 install wheel

1.1.4. 在服务器中拉取最新版代码

git clone https://github.com/ankicommunity/anki-sync-server

1.1.5 安装依赖

cd anki-sync-server

pip3 install -r src/requirements.txt

 1.1.6 升级anki版本

pip3 install anki --upgrade

 1.1.7  处理配置文件

cp src/ankisyncd.conf src/ankisyncd/.

复制好配置文件后,可以对其进行配置

nano src/ankisyncd/ankisyncd.conf

 1.1.8  添加用户

这部分由于没有实测,因此借用了之前一位老哥的内容:

添加用户的脚本,默认被放在了 `src/ankisyncd_cli/ankisyncctl.py`,但是根据实测和 issue,该脚本在这里运行会出现问题,报一个找不到模块的错误。由于我不太会 python ,不清楚它的原理,只能暂时把它移动到 src 目录下,也就是上移一级。

mv src/ankisyncd_cli/ankisyncctl.py ./src/

然后运行它,替换为你的账号

python3 src/ankisyncctl.py adduser aspirantzhang

输入该账号的密码。

 1.1.9 开启同步服务器

进入 src 目录,以后台常驻模式方式运行同步服务器

cd src

nohup python3 -m ankisyncd >> anki.log 2>&1 &

注:运行日志在 src 目录下的 anki.log,可以通过 tail -f anki.log对它进行持续监测

测试进程:

ps -ef | grep anki

[user@server ~]$ ps -ef | grep anki

root  15330     1 0 Apr17 ?      00:00:00 sudo nohup python3.9 -m ankisyncd

root  15331 15330 0 Apr17 ?      00:00:06 python3.9 -m ankisyncd

user  40455 39452 0 14:18 pts/3  00:00:00 grep --color=auto anki

测试访问:浏览器直接访问你的 IP 和端口号,看能否打开。如果无法打开,等待很久后报错。应该查看运行日志,检查是否没有打开防火墙,或云服务器的安全组是否打开等问题。同时,也要注意下面的步骤。

 1.1.10 核对配置文件路径

查看一下 anki.log 的日志(tail -f anki.log),关注其中配置读取的位置

[xxxx]:INFO:ankisyncd:Loaded config from /usr/local/anki-sync-server/src/ankisyncd.conf

本文中的配置,在第7小节中,是将配置文件 ankisyncd.conf放入了 src/ankisyncd/里面,这也是官网的写法。

但是,实际运行中,可能它不这么读取。它可能读取的是 src下面的那个,所以要在日志中仔细查看。它读哪个,就改哪个。

 1.1.11 设置开启启动  

crontab -e

这一段由于无法识别,只能以图片的方式进行展示了。

命令解释:每次开启重启时,进入那个文件夹,召唤 nohup 命令在后台常驻,运行 ankisyncd,并将所有日志追加写入到 anki.log 中。

 1.2 docker方式

 1.2.1 docker-compose安装

这部分内容又是因为张大妈编辑器的问题无法输入,还望大家能够自行百度,在此只能贴图片。

添加可执行权限  

sudo chmod +x /usr/local/bin/docker-compose

测试安装结果  

docker-compose --version

 1.2.2 docker-compose方式部署

docker方式的部署比起linux方式更为容易,且一般情况下不容易出错。但是,与之相比的缺陷在于,只支持x86架构的设备。

 1.2.2.1 创建anki目录

cd /mnt

mkdir docker

cd docker/

mkdir anki

cd anki/

 1.2.2.2 创建docker-compose文件

nano docker-compose.yml

如果没有安装nano,那么补上下面这一步:

sudo apt install nano

然后输入如下内容:

version: "3"

services:

    anki-container:

        image: kuklinistvan/anki-sync-server:latest

        container_name: anki-container

        restart: always

        ports:

        - "27701:27701"

        volumes:

        - data:/app/data

volumes:

    data:

完成之后,ctrl+o之后ctrl+x

 1.2.2.3 创建容器

docker-compose up -d 

 1.2.2.4 重构镜像(可选)

make build-devops SERVICE="anki-sync-server";

 1.2.2.5 自定义内容

docker exec -it anki-container /bin/sh

/app/anki-sync-server  ./ankisyncctl.py --help

usage: ./ankisyncctl.py []

Commands:

  adduser - add a new user

  deluser - delete a user

  lsuser             - list users

  passwd   - change password of a user

/app/anki-sync-server  ./ankisyncctl.py adduser kuklinistvan

Enter password for kuklinistvan:

/app/anki-sync-server 

上述命令的使用方法:

第一步:进入容器

docker exec -it anki-container /bin/sh

第二步:输入命令

./ankisyncctl.py

 增加用户

adduser - add a new user

需要写上用户名,完整命令:

./ankisyncctl.py adduser name

其中,name就是你想设置的用户名,以下同理。

 删除用户

deluser - delete a user

 列出当前用户

lsuser             - list users

 修改密码

passwd   - change password of a user

 2 anki配置

 2.1 电脑端配置

安装后打开 anki 主界面,按 shift+ctrl+a 打开 Addon(或Tools菜单的Add-ons),选择右侧的 View Files

此时会打开 addons21 目录,新建目录 ankisyncd(实际这个目录名可以自己定,不一定非是这个)

新建文件名 __init__.py

根据anki不同版本,输入内容,注意替换你的 IP 和端口号,注意你是 https 还是 http。

 Anki 2.1.28 及更高

import os

addr = "http://127.0.0.1:27701/"  put your server address here

os.environ["SYNC_ENDPOINT"] = addr + "sync/"

os.environ["SYNC_ENDPOINT_MEDIA"] = addr + "msync/"

 Anki 2.1

import anki.sync, anki.hooks, aqt

addr = "http://127.0.0.1:27701/"  put your server address here

anki.sync.SYNC_BASE = "%s" + addr

def resetHostNum():

    aqt.mw.pm.profile['hostNum'] = None

anki.hooks.addHook("profileLoaded", resetHostNum)

 Anki 2.0

import anki.sync

addr = "http://127.0.0.1:27701/"  put your server address here

anki.sync.SYNC_BASE = addr

anki.sync.SYNC_MEDIA_BASE = addr + "msync/"

 2.2 手机端配置

中文:设置 > 高级设置 >  自定义同步服务器

英文:Settings > Advanced > Custom sync server

同步地址 / Sync url:设置为你的ip和端口,必须要带前面的协议,如:

http://127.0.0.1:1234/

媒体文件同步地址 / Media sync url:设置为你的 ip 和端口,必须要带前面的协议,后面必须加 msync/,如

http://127.0.0.1:1234/msync/

这里的ip主要是你的设备的本地ip,如果有公网ip的话,就意味着可以随时随地的同步你的anki。

鉴于anki在通常状态下不会有特别大的内容,通常是以文字的形式进行制卡,因此可以使用云服务器。但是如果存有大量图片甚至视频形式的卡片的话,那么就建议采用本地同步的方式了。

3 结语

这篇文章在某种意义上,已经属于小众到了极致的东西。但是anki这种工具,本身就是适合短期以及中期突击记忆的神器,作为应付考试的一种工具,可以堪称神器,基本可以让你做到如同条件反射一般脱口而出知识。

最后的最后,还是按照老规矩贴出一些相关的产品(当然,本地化部署的话还是建议去海鲜市场淘一下j1800这种便宜的x86主机)。

","force_purephv":"0","gnid":"9cfea82e7cad4685f","goods_list":[{"goods_channel":"淘宝精选","goods_cover":"https://p0.ssl.img.360kuai.com/t01531bab00547d3aeb.jpg?size=600x600","goods_link":"https://go.smzdm.com/91a10ca57fc02628/ca_fz_0_0_0_0_0_0_0","goods_name":"CHUWI/驰为(LarkBoxPro)魔方迷你电脑小微型mini台式主机超轻便携HTPC工控HDMI影视4K输出客厅游戏会议电脑","goods_pos":1,"goods_price":"899"},{"goods_channel":"天猫精选","goods_cover":"https://p0.ssl.img.360kuai.com/t01fcf0b2d7e8e3a9cb.jpg?size=600x600","goods_link":"https://go.smzdm.com/9491a411d69b07c1/ca_fz_0_0_0_0_0_0_0","goods_name":"【阿里云自营首购】阿里云服务器ECS-S6虚拟云主机官方优惠大陆款","goods_pos":2,"goods_price":"393.6"},{"goods_channel":"天猫精选","goods_cover":"https://p0.ssl.img.360kuai.com/t01079e8fe72dd9fbeb.jpg?size=600x600","goods_link":"https://go.smzdm.com/9491a411d69b07c1/ca_fz_0_0_0_0_0_0_0","goods_name":"【阿里云自营首购】阿里云服务器ECS-S6虚拟云主机官方优惠大陆款","goods_pos":3,"goods_price":"393.6"}],"img_data":[{"flag":2,"img":[{"desc":"","height":"1333","title":"","url":"https://p0.ssl.img.360kuai.com/t0127c9248d2a25d8e2.jpg","width":"600"},{"desc":"","height":"1333","title":"","url":"https://p0.ssl.img.360kuai.com/t01fd1bd1330744cb17.jpg","width":"600"},{"desc":"","height":"1333","title":"","url":"https://p0.ssl.img.360kuai.com/t01629e3ceeb63f2931.jpg","width":"600"},{"desc":"","height":"1333","title":"","url":"https://p0.ssl.img.360kuai.com/t0123db291867d32fe0.jpg","width":"600"}]}],"original":0,"pat":"art_src_1,otherc,fts0,sts0","powerby":"hbase","pub_time":1676347936000,"pure":"","rawurl":"http://zm.news.so.com/faad05d1958fb11ff06f8c8c22bf62f1","redirect":0,"rptid":"9b18b7541b70c70d","s":"t","src":"什么值得买","tag":[{"clk":"keducation_1:linux","k":"linux","u":""}],"title":"捡垃圾之后怎么玩? 篇三:考研、考证党的神器anki的同步化方案——自建同步服务器

祖富清1604anki学英语怎么打乱decks卡片的顺序 -
郝柴启15790501532 ______ 有个帮助背单词的软件我一直在用的,可以乱序背,可以直接把任何词库内容转成MP3播放以及LRC同步字幕,而且背单词可以帮你及时复习.你在百度搜单词风暴,去官网下载个单词风暴软件跟着记忆,不要死记硬背中文意思,多看例句,试着多造句子,这样才能明白单词的用法,也可以尝试谐音法,词根词缀法,自己编顺口溜等,并且坚持每天复习,就能比较容易记住很多单词了.

祖富清1604求助iPad端的anki 如何添加新的词库 -
郝柴启15790501532 ______ 1,首先可以用excel建立一个三栏的表格第一栏A放单词或问题,第二栏空着,第三栏放释义或者答案这里是用来排版的换行符,不是必须.2,然后另存或者直接复制到txt内保存为如下格式(UTF-8)此时音标和部分字符可能显示乱码,但不影响最终效果.3,在桌面版ANKI里导入这里可以选择卡片正反分界的符号,比如我喜欢用@或者空格.导入的txt文档示例卡片的显示效果如下

祖富清1604诺基亚从网上下载游戏的网址是多少 -
郝柴启15790501532 ______ http://www.155.cn/mobilegame/,诺基亚专区,可以下.

祖富清16045233游戏下载网站
郝柴启15790501532 ______ 宝软网, http://www.baoruan.com/

祖富清1604阿里云上可以搭建anki server吗 -
郝柴启15790501532 ______ 1、(可选操作)安装操作面板vpsmate首先,推荐初用liunx的朋友安装一个操作面板,好处有二:1、许多命令都可以在web界面上点点鼠标就实现了;2、当你出门在外,服务器突然出问题了,你不一定能找到安装了SSH的机器,这时,使用面...

祖富清1604搜狗五笔拼音输入法下载 官方网站 -
郝柴启15790501532 ______ 搜狗五笔拼音输入法下载 官方网站 http://www.ss11.cn/Soft/26.html 搜狗输入法[1]搜狗拼音输入法(简称搜狗输入法、搜狗拼音)是2006年6月由搜狐(NASDAQ:SOHU)公司推出的一款Windows平台下的汉字拼音输入法,至2007年3月,已推...

祖富清1604能否推荐几个nds游戏rom下载网站?不胜感激 -
郝柴启15790501532 ______ http://games.tom.com/zt/nds/ www.cngba.com www.gbgba.com

祖富清1604日神神话官网下载地址是多少呢
郝柴启15790501532 ______ 说到日神神话官网下载地址是 x5.zdhs8.com 这个是日神神话官方论坛 www.zdhs8.com 希望采纳

祖富清1604关于Anki安卓版TTS语音合成进去就提示”没有可用的文字转语音(TTS)语言“请问怎么解决?我希望可以TTS合成英语发音的.. -
郝柴启15790501532 ______[答案] 手机上anki不能用tts来读很多我喜欢的英汉双解的词库,比如:英语单词的奥秘,Gorgeou ...,如果是纯英英的词库,我的手机上试了我自己制作的英英词库,可以用tts来读.请问谁能帮忙看看,手机anki怎么用tts来读英汉双解的词库啊?

祖富清1604cf官网首页
郝柴启15790501532 ______ http://cf.qq.com/index.shtml

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024