• python自然语言处理——学习笔记:Chapter3纠错


    2017-12-06更新:很多代码执行结果与书中不一致,是因为python的版本不一致。如果发现有问题,可以参考英文版:

    http://www.nltk.org/book/

    第三章,P87有一段处理html的代码:

    >>>raw = nltk.clean_html(html)
    >>>tokens = nltk.word_tokenize(raw)
    >>>tokens

    可是我们执行会有如下错误:

    >>> raw = nltk.clean_html(html)
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/Library/Python/2.7/site-packages/nltk/util.py", line 356, in clean_html
        raise NotImplementedError ("To remove HTML markup, use BeautifulSoup's get_text() function")
    NotImplementedError: To remove HTML markup, use BeautifulSoup's get_text() function

    根据官方网站:介绍http://www.nltk.org/_modules/nltk/util.html
    def clean_html(html):
    raise NotImplementedError ("To remove HTML markup, use BeautifulSoup's get_text() function")
    [docs]def clean_url(url):
    raise NotImplementedError ("To remove HTML markup, use BeautifulSoup's get_text() function")
    网站:http://stackoverflow.com/questions/10524387/beautifulsoup-get-text-does-not-strip-all-tags-and-javascript介绍:
    以后的版本,似乎不支持clean_html()和clean_url()这两个函数
    Support for clean_html and clean_url will be dropped for future versions of nltk. Please use BeautifulSoup for now...it's very unfortunate.
    有关处理HTML 的内容,可以使用http://www.crummy.com/software/BeautifulSoup/上的Beautiful Soup 软件包。

    安装:sudo pip install beautifulsoup4

    之后替换书上的代码:

    from __future__ import division
    import nltk, re, pprint
    from urllib import urlopen
    from bs4 import BeautifulSoup
    
    
    def read_html():
        url = "http://news.bbc.co.uk/2/hi/health/2284783.stm"
        html = urlopen(url).read()
        soup = BeautifulSoup(html)
        text = soup.get_text()
        print text
        tokens = nltk.word_tokenize(text)
        print tokens
    
    
    def main():
        read_html()
    
    
    if __name__ == '__main__':
        main()

    上述脚本文件可以独立运行,运行结果与书上一致

  • 相关阅读:
    JS制作蔡徐坤打篮球小游戏(鸡你太美?)
    2019-泰迪杯c题数据处理,WGS-84(世界标准地理坐标系) 转为 BD-09(百度地理坐标系)
    浅谈指令系统---(汇编语言)
    PyGame实现情人节表白利器
    Python-王者荣耀自动刷金币+爬取英雄信息+图片
    SSM-网站前台博客系统制作(2)---完善版Google的Kaptcha
    UML 用例之间的关系
    在配置文件web.xml中配置Struts2的启动信息
    IO异常处理
    设计监听器
  • 原文地址:https://www.cnblogs.com/sonofelice/p/7890900.html
Copyright © 2020-2023  润新知