NLTK讀書筆記和實踐問題記錄

python版本3.4.2:html

一、書上的例子是python

from nltk.corpus import wordnet as wncurl

wn.synset('car.n.01').lemma_names   #得到同義詞集函數

wn.synset('car.n.01').definition    #得到定義ui

在3.4.2下執行獲得輸出:url

<bound method Synset.lemma_names of Synset('car.n.01')>和spa

<bound method Synset.definition of Synset('car.n.01')>命令行

多是版本問題,在上面命令行後加上()便可,即以下:code

wn.synset('car.n.01').lemma_names()htm

wn.synset('car.n.01').definition()

 二、書上是from urllib import urlopen,可是報錯:ImportError: cannot import name 'urlopen';實際緣由是python3的庫和python2的庫的位置不一樣,這裏應該改爲:

from urllib.request import urlopen。說道這裏,順便說一下from ... import ...和import的不一樣,若是使用import,則導入後若是訪問這個模塊的功能,須要全路徑寫上,而from ... import呢,訪問時就直接寫上import後面的便可(可能的意思是這個import的東東是from這裏來的)。

三、python idle在backspace刪除時老是感受刪除半個byte,有個白框框,能夠按住alt鍵,一次刪一個,按ctrl是一次刪一個詞

四、可能也是python3的緣故,urlopen(url).read()返回的是bytes,而不是str,python中str和bytes轉化比較簡單,例如bytes--》string,a.decode(encoding="utf-8");string-->bytes,a.encode(encoding="utf8")

五、對於天然語言處理,首先要將文本分詞,將標點符號和單詞分開,而後再處理

六、http://www.gutenberg.org/cache/epub/2554/pg2554.txt  --《罪與罰》的地址變動

七、使用nltk.clean_html(htmltext),報錯:builtins.NotImplementedError: To remove HTML markup, use BeautifulSoup's get_text() function,發現nltk再也不提供clearn_html和clean_url兩個函數功能。可使用Beautiful Soup項目提供的功能來處理html

八、安裝方法:

      import easy_install,easy_install packageName或者:

      curl http://www.crummy.com/software/BeautifulSoup/bs4/download/4.1/beautifulsoup4-4.1.2.tar.gz >> beautifulsoup4-4.1.2.tar.gz          

      tar zxvf beautifulsoup4-4.1.2.tar.gz

      cd beautifulsoup4-4.1.2  

      python setup.py install 

九、BeautifulSoup 4以後,import的包改成 bs4,以前是import BeautifulSoup,如今改成import bs4. 具體使用方法:

http://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html

十、因爲沒法可靠地檢驗出文本內容的開始和結束、所以在從原始文本中挑出內容以前,須要手工檢查文件來發現標記內容開始和結尾的特定字符串(使用find/rfind--反向查找)

相關文章
相關標籤/搜索