您的位置:首页 > 编程语言 > Python开发

python-16:分析网页源代码

2015-11-25 00:00 351 查看
我们已经获取了网页的源代码,并且已经加入了异常处理,但是为了实现我们最终的目标,我们至少还要做两件事情

1. 分析网页源代码,找出哪些是我们需要的内容

2. 使用一定的方法将我们需要的内容截取出来

那好,先来看看获取的网页源码



这里只是其中的一小段代码,要是想看网页源码的话,可以在浏览器上打开整个网页的源码

那么怎么分析网页源码

1. 大部分浏览器都有查看网页源码的功能,找到浏览器的这个功能并将源码显示出来

2. 对照源码和网页分析哪些内容是你想要的,说白了就是一个找规律的过程,这并不需要你拥有关于网页编程方面的知识

我们再来看看我们要实现的功能是什么

获取发布人,段子内容,点赞数,评论数等信息,所以我们应该在网页中找到包含全部四个信息的网页代码都有什么特征

大家可以看到,我们所需要的信息的代码是从<div class="article block untagged开始的,然后一直到结束,当然不会像上面贴出来的代码一样少,通过每一个<div class="article block untagged,我们可以找到我们所需要的所有内容

<div class="article block untagged mb15" id='qiushi_tag_113842500'>

<div class="author clearfix">
<a href="/users/12103976" target="_blank" rel="nofollow">
<img src="http://pic.qiushibaike.com/system/avtnew/1210/12103976/medium/20150718023701.jpg" alt="三十公分不含头"/>
</a>
<a href="/users/12103976" target="_blank" title="三十公分不含头">
<h2>三十公分不含头</h2>
</a>
</div>

<div class="content">

看到某歌手再次吸毒被抓的新闻时我不免叹了口气,人家十几年不唱歌了都还有钱吸毒,我TM天天上班连抽烟的钱都没有。。
<!--1447765334-->

</div>

<div class="stats">
<span class="stats-vote"><i class="number">18977</i> 好笑</span>
<span class="stats-comments">

<span class="dash"> · </span>
<a href="/article/113842500" data-share="/article/113842500" id="c-113842500" class="qiushi_comments" target="_blank">
<i class="number">193</i> 评论
</a>


分析源代码的过程非常非常重要,是爬虫编程的核心,所以这个环节一定不能偷懒,慢慢来,即使你花两三天时间来想,也是值得的

至于我的方法就比较笨,对照网页上内容和源码,然后将需要的内容一个一个比对,最后慢慢总结规律,比如,我在网页上看到"三十公分不含头"是发布人的名字,于是我就在网页源码中找这个名字所在的地方,然后依次找段子内容,点赞数和评论数等,最后总结规律,看看包含这些信息的代码有什么特征

别急,慢慢来

接下来就是从网页源码中获取自己想要的内容了,那么如何获取呢?

答案是,正则表达式

正则表达式网上的资料有很多,我看了几篇,写得很乱,这本身就是一个很复杂的东西,对于数学不好的我来说,我希望能尽量简单的学习

所以我做了两个列表,里面收录了关于正则表达式的常用的一些函数和表达式模式

我不建议你完全背下来,用到哪个函数就在列表里面寻找,然后认真学习这个函数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 爬虫