打开IDLE,将会显示一个空白的界面.在顶行输入以下代码以导入"html5lib"模块:importhtml5libfromhtml5libimporttreebuilders,treewalkers,serializerimporturllib2创建一个新的HTML5parser,用来读取一个HTMLwebsite.输入以下代码声明一个新的parser:parser=html5lib.HTMLParser()通过传递地址到urllib2.urlopen函数来打开一个网站,例如,如果你要打开"www.example.com",输入以下代码:url=urllib2.urlopen("http://www.example.com").read()传递网站到HTML5parser来接收到一个treerepresentation.保存这个representation到一个变量"tree"中,代码如下:tree=parser.parse(url)创建一个treewalker如下:treeWalker=treewalkers.getTreeWalker("dom")使用这个treewalker遍历整个tree.这个treewalker将返回一个覆盖该html5网站的信息流.遍历整个tree的代码如下:stream=treeWalker(tree)序列化信息流以便你输出到console.你可以使用以下2条语句来序列化信息流:serial=serializer.htmlserializer.HTMLSerializer(omit_optional_tags=False)output=serial.serialize(stream)对信息流的序列化输出遍历如下:forelementinoutput:在上面一句后面缩进下面的语句,并写上一个打印函数如下:print(element)按F5执行程序.脚本将打开并解析一个HTML5网页.脚本然后序列化页面的树形结构并输出到console.输出可能会因为你选择的网页不同而有所变化,可能会类似于下面的东西:Welcometoawebpage!
阅读全文 >