码迷,mamicode.com
首页 > Web开发 > 详细

第十节 lxml.etree解析HTML文件

时间:2020-03-16 21:46:44      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:coding   text   tostring   utf-8   ref   html解析   信息   sso   com   

 1 from lxml import etree
 2 
 3 r = ‘‘‘ 
 4               <div class="tabsConItem syllabus">
 5                   <ul id="syList">
 6                                                                               <li class="item lesson" >
 7                                   <div class="main"><a href="https://edu.51cto.com/center/course/lesson/index?id=226242" title="第一个python程序与数据存储-1" target="_blank">第一个python程序与数据存储-1</a></div>
 8                               </li>
 9                                                         <li class="item lesson" >
10                                   <div class="main"><a href="https://edu.51cto.com/center/course/lesson/index?id=226241" title="第一个python程序与数据存储-2" target="_blank">第一个python程序与数据存储-2</a></div>
11                               </li>
12                                                         <li class="item lesson" >
13                                   <div class="main"><a href="https://edu.51cto.com/center/course/lesson/index?id=226240" title="第一个python程序与数据存储-3" target="_blank">第一个python程序与数据存储-3</a></div>
14                               </li>
15                                                         <li class="item lesson" >
16                                   <div class="main"><a href="https://edu.51cto.com/center/course/lesson/index?id=226239" title="第一个python程序与数据存储-4" target="_blank">第一个python程序与数据存储-4</a></div>
17                               </li>
18                                                         <li class="item lesson" >
19                                   <div class="main"><a href="https://edu.51cto.com/center/course/lesson/index?id=226238" title="第一个python程序与数据存储-5" target="_blank">第一个python程序与数据存储-5</a></div>
20                                                                   </ul>
21                   <div id="syList_loading" class="loading">加载中</div>
22                   <div id="syList_Empty" class="Empty"></div>
23               </div>‘‘‘
24 ‘‘‘
25 
26 ‘‘‘
27 def parse_text():
28     html = etree.HTML(r)  # 这个底层已经设定好html解析器,不需要重新设置
29     # 使用etree将爬虫爬取保存成字符串格式的文件重新转换成HTML格式的文件以便用xpath语法提取信息
30     print(etree.tostring(html, encoding=utf-8).decode(utf-8))
31 def parse_lagou_file():
32     #拉钩网的语法不想腾讯的那么规范,因此需要调用etree.HTMLParser生成一个专门用来解析html的解析器正常解析
33     parse = etree.HTMLParser(encoding="UTF-8")
34     html2 = etree.parse(lagou.html,parser=parse)   #读取文件方式解析
35     #etree.parse(‘lagou.html‘,parser=parse)默认是使用XML解析器的
36     print(etree.tostring(html2,encoding=utf-8).decode(utf-8))
37 if __name__ == __main__:
38     parse_lagou_file()

 

第十节 lxml.etree解析HTML文件

标签:coding   text   tostring   utf-8   ref   html解析   信息   sso   com   

原文地址:https://www.cnblogs.com/kogmaw/p/12506943.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!