url:统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。
Html:超级文本标记语言(英文缩写:HTML)是为“网页创建和其它可在网页浏览器中看到的信息”设计的一种标记语言。
1.Python urllib模块(一不小心入了爬虫的坑)
from urllib.request import urlopen
url = "http://www.gutenberg.org/files/2554/2554-0.txt"
raw = urlopen(url).read()
raw = str(raw)
type(raw)
len(raw)
raw[:75]
import nltk
tokens = nltk.word_tokenize(raw) ###分词
type(tokens)
len(tokens)
tokens[:10]
text = nltk.Text(tokens)###创建一个 NLTK 文本
type(text)
text[1020:1060]
text.collocations()
raw.find("PART I")
raw.rfind("End of")
raw = raw[5866:1338288]
raw.find("PART I")
注意必须是urllib.request,而不能是只是urllib,会报错。实际操作中raw类型为bytes会报错,多了一步str转化。同上处理html格式:
import nltk
from urllib.request import urlopen
from bs4 import BeautifulSoup
url = "http://news.bbc.co.uk/2/hi/health/2284783.stm"
html = urlopen(url).read()
#html[:60]
#print(html)###可以看到 HTML 的全部内容,包括 meta 元标签、图像标签、map 标
#签、JavaScript、表单和表格。
soup = BeautifulSoup(html)
raw = soup.get_text()
tokens = nltk.word_tokenize(raw)
print(tokens)
tokens = tokens[96:399]
text = nltk.Text(tokens)
text.concordance('gene')
其中python3版本不支持clean_html()和clean_url()这两个函数采用BeautifulSoup.get_text()处理。