mac下導出kindle單詞本的單詞


平常都是用kindle來看電子書,偶爾也會看上一些英文書籍,不可避免的會遇到不少陌生的單詞,而kindle專門針對這種需求,做了不少優化,可以直接在kindle上面查閱單詞,甚至可以背單詞。但是畢竟不是專門的英語學習工具,在復習陌生單詞方面還是不夠專業(例如不能發音是個硬傷),就想着導出單詞到別的軟件上復習。

而在mac下苦於不能直接用kindle mate這款軟件(我一次都沒有用過這個軟件,只是看到網上評論和使用比較多),我也懶得去在windows虛擬機上面間接使用。一頓搜索之下,發現在mac下並沒有直接導出kindle單詞本的軟件可提供使用。

經過一番思考,既然有第三方軟件能夠支持讀取單詞本這種功能,必然是存在方法在kindle上去獲取單詞本的數據。

直接將kindle通過usb鏈接到手機上,你會發現掛載了一個documents的文件夾,我在這個文件夾找了一圈,愣是沒有找到。想着會不會有什么隱藏文件夾呢?
kindle-words-mount

通過cd進入kindle的掛載盤,我發現除了documents文件夾外,還有一個叫做system的文件夾。頓時感覺有戲。層層遞進,不負眾望,在/Volumes/Kindle/system/vocabulary目錄下,找到了vocab.db這個文件。

kindle-words-ls

vocab.db是一個sqlite文件,如果你沒有打開sqlite文件的軟件可以下載一個SqliteBrowser

SqliteBrowser是開源免費的Sqlite數據庫文件查看軟件

通過SqliteBrowser可以直接看到到vocab.db的數據庫下面的表
kindle-words-table

SqliteBrowser軟件的Browse Data欄下,通過查看數據發現了兩個有實際意義的數據表
kindle-words-table-words

kindle-words-table-lookups

其中LOOKUPS表里面就是對應的你在那本書那塊地方查詢的這個單詞的相關記錄(在kindle里面背單詞可以看得到相關的數據)。
WORDS表就是我們單詞本里面的所有單詞數據了。

到這里,也宣告正式找到了kindle單詞本的數據所在了。既然知道了數據在哪里了,剩下的導出就簡單的多了,我只需要單詞的txt文本,以便導入別的背單詞軟件,雖然可以通過軟件直接導出,不過這種方式的復用性不夠強。(考慮到導出單詞是一個周期性的工作)

平時軟件開發過程中,其實都已經安裝好了sqlite3這個庫,可以直接考慮用命令行來實現這個工作流程。

cp /Volumes/Kindle/system/vocabulary/vocab.db ~/
sqlite3 ~/vocab.db  "select word from words;" >> kindlewords.txt

將這兩行shell命令保存成sh文件,這樣我將kindle插入電腦的時候直接運行一下命令就可以直接得到我所需要的txt文件了,既簡單又優雅。

后續考慮將整個流程自動化,從拷貝單詞本到導入單詞到相關的軟件中。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM