見出し画像

Fast Word Queryのスクリプトを使ってAnkiのカードを自動で生成する方法

更新内容

2022/08/26

Lexico.comがDictionary.comにリダイレクトされるようになったため、音声ファイルダウンロード用のスクリプトを更新しました(Oxford Advanced Learner's Dictionaryから取得するようにした)。ご購入の方はsound.pyをダウンロードして上書きしてください。

内容

AnkiのアドオンFast Word Queryを用いて、英辞郎Oxfordなどから単語の意味や音声、画像などを自動でダウンロードし、Ankiのカードを作成を自動化する方法を紹介します。これにより、覚えるべき単語のリストさえ手に入れば自動でカードを作成できるので、カード作成の手間を大きく省くことができます。Oxford Advanced Learner's Dictionaryに掲載されている発音は人間の発音が録音されているので、機械で自動生成した音声などよりも自然なものが多いのが利点と言えます。

スクリプトはプログラミング言語のPythonで書かれているので、知識のない方にはハードルが高いですが、このページでは私が書いたスクリプトを配布しているので、知識のない方でも簡単に利用できます。

今回は、SVLの単語リストを利用して、カードを作成する手順を紹介します。

デモ画面

用意するもの

  • PC版Anki バージョン 2.1.49(2023/10/31現在の最新版バージョン2.1.66では動作しません。Ankiの過去バージョンの取得方法やAnkiのダウングレードの方法についてはAnkiをダウングレードする方法(PC版)をご参考ください)

  • テキストエディタ(メモ帳など)

  • インターネット環境

SVLの単語リストのAnkiへの取り込み

SVLの単語リストはweb.archiveで閲覧可能なので、それを利用します。単語の一覧をテキストエディタにコピーし、縦一列に単語が並んだ状態のテキストファイルを作り、適当な名前で保存します。今回はnote.txtとして保存。

画像10

note.txtをAnkiに読み込ませます。
「ファイルを読み込む」をクリックし、先ほど作成したテキストファイルを選択

画像11

先ほど作成したテキストファイルを選択

画像12

そのまま「読み込む」をクリック

画像13

以上で単語リストの取り込みは完了です。

Fast Word Queryのインストール方法

Ankiのメニューバーの「ツール > アドオン」を選択

画像13

「新たにアドオンを取得」を選択

画像2

出てきたウィンドウのコードの部分に「1807206748」と入力、OKボタンをクリックし、Ankiを再起動

画像3

以上でアドオンのインストールは完了です。

ノートに音声用のフィールドと画像用のフィールドを追加

検索画面で「フィールド」をクリック

画像13

「追加」をクリック

画像7

フィールド名に「音声」と入力し、OKをクリック

画像12

同様にして「画像」フィールドも追加し、「保存」をクリック

画像13

以上でフィールドの追加は終了です。

スクリプトのダウンロード

ここでは単語の意味を英辞郎からダウンロードするスクリプトのみを公開します。購入者限定で音声データや画像データをダウンロードするスクリプトを公開していますので、興味がございましたらご購入ください。

スクリプトのインストール

ダウンロードしたスクリプトをスクリプトフォルダに入れます。スクリプトフォルダは通常、

C:\Users\(ユーザー名)\AppData\Roaming\Anki2\addons21\1807206748\service\dict

に指定されています。

スクリプトの設定

1. 「検索」をクリックし検索画面を開きます

画像13

2. メニューバーの「FastQW > Options」を選択

画像13

赤で囲ったところと同じように設定

画像20

以上でスクリプトの設定は終了です。

スクリプトを実行して各種データを取得

ブラウザ画面でデータを取得したいカードをクリックし、暗転状態にさせます(画像ではmealが選択された状態)

画像15

メニューバーの「FastWQ > Quary Selected」を選択

画像16

このように画面下部の「裏面」にデータが入っていれば成功です。

画像17

Fast Word Queryは複数の単語を選択し、一度に複数のカードを作成することもできますが、これはWebサイトに負荷がかかり、ひどい場合は過剰アクセスにより一定期間アクセス禁止などの措置をとられる場合があります。そういった事態を避けるため、時間を空けながら登録することをおすすめします(一度にデータを取得するカードの数は多くても20くらいを限度にしてください)。SettingのNumber of Threadsの数を1にして利用するのも良いでしょう。

CSSを編集し、カードの体裁を整える

このままでも十分使用できますが、デフォルトのままだと多少見づらいので、CSSを編集する必要があります。CSSについては多少面倒なところもあるので、詳しくない方のために編集済みのCSSファイル用意しました。

ダウンロードしたCSSファイルは、メディアフォルダに入れます。メディアフォルダの場所は通常

C:\Users\(ユーザー名)\AppData\Roaming\Anki2\(プロファイル名)\collection.media

となっています。

さらに、そのCSSファイルをカードに適用させます。

検索画面の「カード」を選択し、

画像19

書式の部分に

@import url("_eijiro.css")

と入力します。

画像20

以上で、カードが見やすくなりました(画像参照)。

画像22

この裏側の意味をすべて思い出そうとするのは無茶なので、最初は第一義のみを思い出すということから始めると良いでしょう。多義語など複数の意味を思い出すためのカードの作り方は、

を参考にしてみてください。

以下は有料となりますが、音声データと画像データ用のスクリプトを公開しています。興味がございましたらぜひご購入ください。

ここから先は

530字 / 5画像 / 2ファイル

¥ 500

この記事が気に入ったらサポートをしてみませんか?