没有合适的资源?快使用搜索试试~ 我知道了~
python网络编程学习笔记(七):HTML和XHTML解析(HTMLParser、BeautifulSoup)
1 下载量 27 浏览量
2020-12-24
00:19:55
上传
评论
收藏 102KB PDF 举报
温馨提示
试读
9页
一、利用HTMLParser进行网页解析 具体HTMLParser官方文档可参考http://docs.python.org/library/htmlparser.html#HTMLParser.HTMLParser 1、从一个简单的解析例子开始 例1: test1.html文件内容如下: 复制代码 代码如下:<html> <head> <title> XHTML 与 HTML 4.01 标准没有太多的不同</title> </head> <body> i love you </body> </html> 下面是能够列出title和body的程序示例: 复制代码 代码如下:##@小五义:#
资源详情
资源评论
资源推荐
python网络编程学习笔记网络编程学习笔记(七七)::HTML和和XHTML解析解析(HTMLParser、、
BeautifulSoup)
一、利用一、利用HTMLParser进行网页解析进行网页解析
具体HTMLParser官方文档可参考http://docs.python.org/library/htmlparser.html#HTMLParser.HTMLParser
1、从一个简单的解析例子开始
例1:
test1.html文件内容如下:
复制代码 代码如下:
<html>
<head>
<title> XHTML 与 HTML 4.01 标准没有太多的不同</title>
</head>
<body>
i love you
</body>
</html>
下面是能够列出title和body的程序示例:
复制代码 代码如下:
##@小五义:
##HTMLParser示例
import HTMLParser
class TitleParser(HTMLParser.HTMLParser):
def __init__(self):
self.taglevels=[]
self.handledtags=[‘title’,’body’] #提出标签
self.processing=None
HTMLParser.HTMLParser.__init__(self)
def handle_starttag(self,tag,attrs):
if tag in self.handledtags:
self.data=”
self.processing=tag
def handle_data(self,data):
if self.processing:
self.data +=data
def handle_endtag(self,tag):
if tag==self.processing:
print str(tag)+’:’+str(tp.gettitle())
self.processing=None
def gettitle(self):
return self.data
fd=open(‘test1.html’)
tp=TitleParser()
tp.feed(fd.read())
运行结果如下:
title: XHTML 与 HTML 4.01 标准没有太多的不同
body:
i love you
程序定义了一个TitleParser类,它是HTMLParser类的子孙。HTMLParser的feed方法将接收数据,并通过定义的HTMLParser对象对数据进行相应的解析。其中
handle_starttag、handle_endtag判断起始和终止tag,handle_data检查是否取得数据,如果self.processing不为None,那么就取得数据。
2、解决、解决html实体问题实体问题
(HTML 中有用的字符实体)
(1)实体名称
当与到HTML中的实体问题时,上面的例子就无法实现,如这里将test1.html的代码改为:
例2:
复制代码 代码如下:
<html>
<head>
<title> XHTML 与" HTML 4.01 "标准没有太多的不同</title>
</head>
<body>
i love you×
</body>
</html>
利用上面的例子进行分析,其结果是:
title: XHTML 与 HTML 4.01 标准没有太多的不同
body:
weixin_38680340
- 粉丝: 4
- 资源: 980
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0