小白学爬虫----3--简单爬取“生活大爆炸”贴吧

昨天学了了如何用selenium的webdriver获取比较简单的网页的html。

今天学习如何从html中获取我们想要的信息,以一个真正意义上的爬虫小项目为例。

比如爬取python百度贴吧

找到每一篇帖子的标题、发帖人、日期、楼层以及跳转链接


python贴吧首页的URL是

http://tieba.baidu.com/f?kw=生活大爆炸&ie=utf-8&pn=0

向后翻一页,我们发现URL变成了

http://tieba.baidu.com/f?kw=python&ie=utf-8&pn=50

可以发现,&pn后的数字控制着页码数

然后用chrome查看网页的源代码


每一篇帖子的标题,作者,发帖日期的内容都在<li class = 'j_thread_list clearfix'>标签下,因此可以用bs4来筛选,也可以用webdriver来筛选,我们这里先用bs4来筛选。

首先get网页的html源代码


其次进行筛选

我们先理一下<li>标签下的结构:<li>标签下有很多<div>标签,我们需要的信息就在其中

应用BeautifulSoup.find()的方法


这里先用soup.find()的方法找到各种li标签,然后具体分析所需要的内容在li标签的哪个子标签中。

我们发现,前三个置顶帖子的li标签的class属性与之后的帖子class属性有所差异,需单独处理。

简单介绍下soup.find()的方法:这里只用到了两个参数,即哪个标签,标签下的class属性是什么(帖子的class属性

是有规律可循的)因此可以定位所有帖子的标签。

更详细的教程可以参见文档:

https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/#find-all

最后我们得到如下结果:


当然这只是爬取了第一页的内容,更具体的见下一节blog






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值