用python写网络爬虫的三种网页抓取方法
辅助函数
用来下载页面html源码:
|
|
三种方法
方法一:正则表达式
|
|
方法二:BeautifulSoup模块
BeautifulSoup模块可以解析网页,提供定位内容的便捷接口,并且能够正确解析缺失的引号并闭合标签。美中不足的是由于是python编写,速度偏慢
|
|
方法三:Lxml
Lxml是基于libxml2解析库的python封装,因使用C语言编写,比BeautifulSoup更快,下面是使用lxml的CSS选择器抽取面积的示例代码
|
|
CSS选择器示例:
- 选择所有标签:*
- 选择a标签:a
- 选择所有class=”link”的元素:.link
- 选择id=”home”的a标签:a#home
- 选择父元素为a标签的所有span子标签:a > span
- 选择a标签内部的所有span标签:a span
- 选择title属性为”Home”的所有a标签:a[title=Home]