您的位置:首页 > 新闻资讯 >文章内容
【新手入门】Python爬虫爬取步骤分析
来源:互联网 作者:admin 时间:2019-02-25 16:44:06

  网络爬虫的基本理念这里就不讲了,如果大家还没有清楚的,可以先去查一下。本文主要讲Python爬虫爬取步骤分析,很多人都分享了自己爬取的代码,其实新手是看不懂的,一篇的代码看下来,可能还蒙圈了,不是说这是最简单的编程语言吗?这是因为大家可能还没有弄明白其中的一些步骤。


  HTTP代理工程师表示,其实爬虫爬取的过程,跟我们浏览网页的流程是差不多的,比如:我们在浏览器的地址栏中输入地址,打开网页的过程其实就是浏览器作为一个浏览的“客户端”,向服务器端发送了一次请求,把服务器端的文件“抓”到本地,再进行解释、展现。


  HTML是一种标记语言,用标签标记内容并加以解析和区分。浏览器的功能是将获取到的HTML代码进行解析,然后将原始的代码转变成我们直接看到的网站页面。那么爬虫要想抓取数据,是如何实现的呢?


  一、python获取html页面


  其实,最基本的抓站,两句话就可以了:


  importurllib2


  content=urllib2.urlopen('http://XXXX').read()


  这样可以得到整个html文档,关键的问题是我们可能需要从这个文档中获取我们需要的有用信息,而不是整个文档。这就需要解析充满了各种标签的html。


  二、python爬虫抓取页面后解析html方法


  1.html解析库SGMLParser


  Python默认自带HTMLParser以及SGMLParser等等解析器,前者实在是太难用了,我就用SGMLParser写了一个示例程序:


【新手入门】Python爬虫爬取步骤分析


  很简单,这里定义了一个叫做ListName的类,继承SGMLParser里面的方法。使用一个变量is_h4做标记判定html文件中的h4标签,如果遇到h4标签,则将标签内的内容加入到List变量name中。解释一下start_h4()和end_h4()函数,他们原型是SGMLParser中的


  start_tagname(self, attrs)


  end_tagname(self)


  tagname就是标签名称,比如当遇到

,就会调用start_pre,遇到

,就会调用end_pre。attrs为标签的参数,以[(attribute,value),(attribute,value),...]的形式传回。



  2.html解析库pyQuery


  pyQuery是jQuery在python中的实现,能够以jQuery的语法来操作解析HTML文档,十分方便。使用前需要安装,easy_installpyquery即可,或者Ubuntu下


【新手入门】Python爬虫爬取步骤分析


  3.html解析库BeautifulSoup


  有个头痛的问题是,大部分的网页都没有完全遵照标准来写,各种莫名其妙的错误令人想要找出那个写网页的人痛打一顿。为了解决这个问题,我们可以选择著名的BeautifulSoup来解析html文档,它具有很好的容错能力。


  以上对Python爬虫爬取步骤分析进行了分析,不同的人有不同的习惯,细节处理上也可能是不一样的,仅供参考。


相关文章内容简介
推荐阅读
  • 19 2019-03
    怎么使用动态代理IP加快爬虫的速度?

    现在我们进行数据的采集工作越来越难爬取了,这是因为大多数网站都有自己的防爬策略,而且一些防爬策略非常严格,简直无从下手,这就需要借助其他的一些助力了,比如使用动态代理IP。

  • 23 2019-03
    更换IP的几种方法,动态转发代理好用吗?

    大家有时候会看到很多别人发的广告,或者是机器发布文章之类的,这些都会有IP的限制。就比如说,论坛的注册,对于同一个IP都会有限制,而且经常使用同一个IP发布信息,很难通过。为了方

  • 13 2019-05
    代理IP选择看业务需求

    代理IP选择看业务需求,为项目找到最合适的便好,也不需要找最好的,很多时候最好的也代表了最贵的,而你的项目或许并不需要这么高质量的,或者成本并不支持等等,因此我们最好是代理I

  • 25 2019-03
    如何利用免费IP代理池刷量

    刷量,大家也不少见了,像视频播放量,文章阅读量,商品销售量等等,这些其实都是可以刷出来的,这么看来是不是刷量蛮简单的,想刷就刷。

  • 17 2019-04
    萌新能抓取到微博数据吗?编写Python爬虫要注意什么?

    萌新能抓取到微博数据吗?不管爬取什么数据,都是要使用一些工具辅助的,比如,在爬取之前,需要有一个靠谱的爬虫程序,自己写也行,或者去网上找教程找现成的程序也行,现在网上也有

  • 20 2019-05
    代理服务器伪IP地址

    代理服务器伪IP地址,这样可以有效的节约网上资源,即用代理服务器可以减少对IP地址的需求,对于使用局域网方式接入Internet,如果为局域网(LAN)内的每一个用户都申请一个IP地址,其费用

在线客服
大客户VIP渠道
点击这里给我发消息
讨论QQ群
HTTP代理IP爬虫
客服电话
13318873961