1. 程式人生 > >python自然語言處理-讀書筆記4

python自然語言處理-讀書筆記4

# -*- coding:utf-8 -*-
# __author__ = 'lipzhang'
import nltk, re, pprint
#從網路和硬碟訪問文字
#電子書
from urllib.request import urlopen
from bs4 import BeautifulSoup
# url = r'https://www.gutenberg.org/files/2554/2554-0.txt'#從網路上閱讀小說罪與罰
# proxies = {'http': 'http://www.someproxy.com:3128'}
# raw =urlopen(url).read()
# raw=raw.decode('utf-8')
# print(len(raw))
# print(raw[:75])
# tokens = nltk.word_tokenize(raw)
# text = nltk.Text(tokens)
# print(text)
# print(raw.find("PART I"))
# print(raw.rfind("End of Project Gutenberg's Crime"))
# raw = raw[5303:-1]
#print(raw)

#處理HTML
# url = "http://news.bbc.co.uk/2/hi/health/2284783.stm"
# html = urlopen(url).read()
# print(html[:60])
# raw = BeautifulSoup(html,'html').get_text()
# print(raw)
# tokens = nltk.word_tokenize(raw)
# print(tokens)
# tokens = tokens[96:399]
# text = nltk.Text(tokens)
# print(text)
# print(text.concordance('gene'))


#處理搜尋引擎的結果

#處理 RSS 訂閱
# import feedparser
# llog = feedparser.parse("http://languagelog.ldc.upenn.edu/nll/?feed=atom")
# print(llog['feed']['title'])
# post = llog.entries[2]
# print(post.title)
# content = post.content[0].value
# print(content[:70])
#
# content=nltk.word_tokenize(BeautifulSoup(content,'html').get_text())#去除html標籤
# print(content[:70])
#
# st=nltk.word_tokenize(BeautifulSoup(llog.entries[2].content[0].value,'html').get_text())
# print(st)


#讀取本地檔案和語料庫檔名
path = nltk.data.find('corpora/gutenberg/melville-moby_dick.txt')
raw = open(path, 'rU').read()#'r'意味著以只讀方式開啟檔案(預設),'U'表示“通用”,它讓我們忽略不同的換 行約定。
print(raw)

#從PDF 、MS Word及其他二進位制格式中提取文字
#使用pypdf2
#捕獲使用者輸入
s = input("Enter some text: ")
print("You typed", len(nltk.word_tokenize(s)), "words." )

#NLP處理一般流程 處理流程 :開啟一個 URL, 讀裡面 HTML 格式的內容 , 去除標記 , 並選擇字元 的 切 片 ,然後分詞 ,是否轉換為 nltk.Text 物件是可選擇的 。我們也可以將所有詞彙小寫並提取 詞彙表