《数据采集技术》课件-BeautifulSoup_第1页
《数据采集技术》课件-BeautifulSoup_第2页
《数据采集技术》课件-BeautifulSoup_第3页
《数据采集技术》课件-BeautifulSoup_第4页
《数据采集技术》课件-BeautifulSoup_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目三

动态网页数据解析目录Content1

使用BeautifulSoup解析“浪潮云说”网页数据2

使用Xpath解析“新闻动态”网页数据使用BeautifulSoup解析“浪潮云说”网页数据贰BeautifulSoup安装任务技能BeautifulSoup使用Python的pip工具安装BeautifulSoup有四个版本,在安装时只需在BeautifulSoup后添加版本号即可安装指定版本BeautifulSoup使用标签选择器、方法选择器、CSS选择器使用BeautifulSoup解析“浪潮云说”网页数据贰1BeautifulSoup安装Step1打开命令窗口,输入“pipinstallbeautifulsoup4”下载命令,进行BeautifulSoup4下载安装Step2使用“importbs4”方式导入BeautifulSoup解析库验证安装是否成功,不出现错误即可说明安装成功使用BeautifulSoup解析“浪潮云说”网页数据贰常见的解析器解析器优势劣势Python标准库Python的内置标准库执行速度适中文档容错能力强Python(2.7.3or3.2.2)前的版本中文档容错能力差lxmlHTML解析器速度快文档容错能力强需要安装C语言库lxmlXML解析器速度快唯一支持XML的解析器需要安装C语言库html5lib最好的容错性以浏览器的方式解析文档生成HTML5格式的文档速度慢使用BeautifulSoup解析“浪潮云说”网页数据贰2BeautifulSoup使用语法格式:importbs4bs4.BeautifulSoup(markup,parser)与Xpath解析器相同,BeautifulSoup同样不能直接用于网页内容的采集,其需要与Urllib、Requests等爬虫库结合使用。在使用时,通过BeautifulSoup()方法实现文档的解析。使用BeautifulSoup解析“浪潮云说”网页数据贰BeautifulSoup()方法包含参数参数描述markup文档parser解析器parser参数值参数值描述html.parserPython标准库lxmllxmlHTM解析器xmllxmlXML解析器html5libhtml5lib使用BeautifulSoup解析“浪潮云说”网页数据贰(1)标签选择器语法格式:importbs4soup=bs4.BeautifulSoup(markup,parser).node.parameter标签选择器主要用于通过文档中包含的标签进行元素的定位,有普通节点、子节点、子孙节点、父节点、兄弟节点等,并在定位节点后实现具体信息的获取。使用BeautifulSoup解析“浪潮云说”网页数据贰标签选择器参数参数描述name节点名称,通过“.”连接node关系节点获取属性,如兄弟节点、父节点等parameter数据提取属性parameter参数包含属性属性描述name获取节点的名称attrs['属性']获取节点所有属性string获取节点内容使用BeautifulSoup解析“浪潮云说”网页数据贰node参数包含属性属性描述contents直接子节点children子孙节点descendants所有子孙节点parent节点的父节点parents节点的祖先节点next_sibling节点下一个兄弟节点previous_sibling节点上一个兄弟节点next_siblings节点后面的全部兄弟节点previous_siblings节点前面的全部兄弟节点使用BeautifulSoup解析“浪潮云说”网页数据贰(2)方法选择器相比于标签选择器,只能通过标签名称逐级进行节点的定位,设置较为繁琐,灵活性不好,而方法选择器可以通过指定的参数设置标签以及相关属性实现节点的直接定位,实现节点包含内容的获取。BeautifulSoup常用方法选择器参数描述name节点名称,通过“.”连接node关系节点获取属性,如兄弟节点、父节点等使用BeautifulSoup解析“浪潮云说”网页数据贰语法格式:importbs4soup=bs4.BeautifulSoup(markup,parser)soup.find(name,attrs,recursive,text,**kwargs)soup.find_all(name,attrs,recursive,text,limit,**kwargs)在BeautifulSoup中,find()和find_all()方法选择器可以通过节点名称和节点包含属性与属性值在文档中查询符合条件的节点内容。使用BeautifulSoup解析“浪潮云说”网页数据贰(3)CSS选择器常用的CSS选择器CSS选择器描述select('title')获取标签为title的所有节点select('.sister')获取class为sister的所有节点select('#link')获取id为link的节点select('p#link')获取p节点下id为link的节点select('a[class="sister"]')获取class为sister的所有a节点select('pa[class="sister"]')获取p节点下class为sister的所有a节点任务实施贰完成数据的解析和提取通过循环语句遍历每个节点获取数据查看网页确认被采集的信息导入BeautifulSoup,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论