美文网首页
学英语的一种办法

学英语的一种办法

作者: 高天蒲 | 来源:发表于2016-04-16 00:04 被阅读332次

    我是个兴趣广泛的人,看很多书,经常会下载一些英文的pdf放在ipad上阅读,英语的单词量还没达到专业8级的水平,感觉不认识的单词比较多,始终是个困扰。

    某些英文pdf与中文复印而成的pdf不同,它里面的文本应该是可以提取出来的,

    然后对这本书中出现的单词做统一词根处理,再进行词频统计,从高到低排序,展示给用户,

    用户对每个单词都挨个打上标记,哪些已经掌握了,哪些还没掌握,如果在其他书中已经标记过的,可以直接把标记记录加载到当前这本书中。日积月累,就行成了一个用户已掌握、未掌握单词的数据库。

    经常翻翻那些未掌握的单词,这些单词出现在那本书中,出现的句子是什么,单词的中文意思是什么,等等。

    相信会有助于英语单词的快速掌握。

    实现方案:

    1. 从pdf中提取文本 - PDFMiner库
      <pre>
      import pyPdf
      def convertPdf2String(path):
      pdf = pyPdf.PdfFileReader(file(path, "rb"))
      print pdf.getNumPages()
      for page in pdf.pages:
      print page.extractText().encode("ascii", "ignore")
      </pre>
    2. 使用python nltk做词频统计
      <pre>
      tokens = nltk.word_tokenize(content)
      x = nltk.FreqDist(tokens)
      sorted_x = sorted(x.items(), key=operator.itemgetter(1),reverse=True)
      for a in sorted_x:
      print a[0],a[1]
      </pre>
      效果还不是特别好,应该把字符、数字去掉,只保留英文单词
    3. UI,呈现-标签
      将词频统计结果呈现给用户,允许用户打标签:已掌握,尚未掌握
    4. 单词复习,词频高、又没有掌握的

    数据库表:用户、图书、用户-单词、图书-单词-词频、单词

    ~原始想法:
    自然语言处理,统计词频,按高低排序,用户可以为每个词打个记号,哪些是已经知道意思的,哪些是不知道的,形成一个用户都掌握了哪些单词的词典库,经过积累后,用户对于自己掌握哪些单词,就非常清楚了。

    相关文章

      网友评论

          本文标题:学英语的一种办法

          本文链接:https://www.haomeiwen.com/subject/ftwnlttx.html