爬虫学习笔记(五) Beautiful Soup使用

2018-01-12 分类:爬虫 阅读(723) 评论(0)

上篇博客说了正则表达式,但是正则学起来比较费劲,写的时候也不好写,这次说下Beautiful Soup怎么用,这个模块是用来解析html的,它操作很简单,用起来比较方便,比正则学习起来简单多了。

这是第三方模块需要安装

Beautiful Soup对象

Beautiful将复杂HTML文档转换成一个复杂的树形结构,每个节点都是Python对象,所有对象可以归纳为4种:

  Tag

标签,通过html的标签取到内容, 比如说a标签,如果有多个的话,取的是第一个。

 

NavigableString

也就是内容,获取到一个标签里面的内容,文字,比如说上面title标签里面内容获取到,也就是besttest直接用tag.string即可。

Beautifulobj

Beautifulobj对象就是代表整个html,比如说上面的obj就是Beautifulobj对象,通过它来操作各个标签

Comment

Comment 对象是一个特殊类型的 NavigableString对象, 其实输出的内容仍然不包括注释符号,但是如果不好好处理它,可能会对我们的文本处理造成意想不到的麻烦。例如上面的一个a标签里面,首页是被注释了的。

重点操作

上面的都是通过某个标签获取到的,如果想直接获取到某些标签,获取包含某些属性的就要用其他的方法了。

 

搜索标签

 

css选择器

css选择器就是通过css获取元素的方式来获取html的标签,如果对css比较熟悉的人用起来就很方便了,在css选择器中 "." 代表选择的class,"#"代表选择的id。

 

节点内容

节点就是怎么获取html的各个节点,比如说和div同级的其他div,div下面的子标签等等。

总结

主要说了怎么获取到html里面的各种标签、元素,修改和删除没有写,因为爬虫一般用不到修改,获取数据就够了。find_all()和css选择器都很常用,如果对css比较熟悉的话,建议使用css选择器。标签搜索和css选择器这里非常的常用。

 

 

您可能也喜欢:

爬虫学习笔记(十)scrapy入门,使用scrapy爬取猫眼电影top100

上面篇博客说了scrapy的流程,这次先做个小项目,爬取到猫眼电影排行榜前100的电影名称、评分、上映时间、主演,存储到mongodb里面。再做这个项目的过程中,来学习scrapy各个组件的用法。 需要把mongodb装好,启动,linux下不会装的可以在我的博客里面搜一下mongodb,有教程,W...

more

爬虫学习笔记(九)scrapy爬虫框架流程介绍

Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛。 当然用咱们前面学的requests、正则表达式、selenium、Beautiful Soup、lxml等等的也可以爬取到数据,代码量也不大。为什么还要用scrapy呢,因为scrapy框架封装了...

more

爬虫实战,selenium爬取斗鱼吃鸡所有主播信息和人气

吃鸡很火,咱们爬下斗鱼的网站,把所有的刺激战场的主播和人气爬下来,存到excel里面,初步做个分析,网站是 https://www.douyu.com/g_jdqscjzc。 咱们大致浏览一下这个网页,发现它的数据都是动态加载的,把网站的js禁用了之后,页面上基本上没啥东西了。 禁用javaScri...

more

评论&留言
欢迎新朋友你的到来!
还没有人抢沙发呢~
昵称

登录

忘记密码 ?

切换登录

注册