English-words-pronunciation-mp3-audio-download:基于 Python 的英语单词发音 MP3 下载工具项目

Download the pronunciation mp3 audio for 119,376 unique English words/terms

Branch1Tags0
FilesLast commitLast update
9 years ago
9 years ago
9 years ago
9 years ago
8 years ago
9 years ago
9 years ago

英语单词发音MP3音频下载

引言

这是一个简单的Python脚本,用于下载119,376个独特英语单词/术语的MP3发音音频。这些音频文件总共大约占用2GB硬盘空间。

MP3音频来源自以下7个在线词典:

这个项目几乎覆盖了你能想到的一切,从".22口径"到"锌镉硫化物";从"一万亿"到"依赖水平的功能性磁共振成像"(没错,这个长词我们也找到了发音)。如果你查找的单词不在列表中,很可能是因为它在所有在线词典中都未出现。

目前,我没有分享我的爬虫框架源代码的打算。但是,如果你想爬取其他网站但不知道如何操作,可以寻求我的帮助,我会乐意为你制作一个爬虫。

开始使用

  • 下载并安装Python 3
  • 安装依赖项
$ pip install -r requirements.txt

下载所有MP3音频

直接开始下载。

$ python3 download_all_mp3.py

默认情况下,此命令将启动一个拥有30个线程的下载器。

若要指定下载器使用的线程数,只需传入正整数作为参数:

$ python3 download_all_mp3.py 10

这将以10个并发线程启动下载器。

下载的mp3音频文件将保存在download/目录下。

在其他应用程序中使用data.jsonultimate.json

data.jsonultimate.json文件包含了119,376个独特的英语单词的发音MP3音频文件的URL。

我的爬虫框架花费数十小时从网络上获取所有数据。现在,你可以免费直接使用这些数据,而无需投入时间和精力编写爬虫和爬取网络。这个项目的理念就像彩虹表一样。

data.jsonultimate.json之间唯一的区别是,前者每个单词/术语只包含一个URL,而后者包含该单词在所有在线词典中出现过的所有URL。

例如,data.json的一部分如下所示:

{
    "abel": "http://static.sfdict.com/staticrep/dictaudio/A00/A0015900.mp3",
    "abele": "http://www.yourdictionary.com/audio/a/ab/abele.mp3",
    ...
}

而对应的ultimate.json片段是:

    "abel": [
        "http://static.sfdict.com/staticrep/dictaudio/A00/A0015900.mp3",
        "http://img2.tfd.com/pron/mp3/en/US/d5/d5djdgdyslht.mp3",
        ...
    ],
    ...

显然,每个键代表一个英语单词,值是MP3音频文件的URL,或者是一系列URL。

data.jsonultimate.json分别重11.1MB和39.1MB,因此您可以将它们加载到内存中作为查找示例表。

致谢

单词列表是从名为Words API Blog的第三方WordNet分发商处下载的。

特别感谢那些让其网站可被爬虫访问的在线词典的所有者。虽然有些网站显然花了不少功夫隐藏MP3音频的URL以远离主HTML页面。

Introduction

Download the pronunciation mp3 audio for 119,376 unique English words/terms

Customize your domain