6080

python爬虫基础必备知识之HTML标签

上篇文章写了个小爬虫来入门python,其实涉及到知识点还是蛮多的,模块放到后面分解,先来谈谈更基础的html标签,毕竟在提取我们想要的数据时,分析网页代码的比重还是蛮大的

我们看到的网页就是由html构成的,其实并不用太知道html是啥,要学好html那又将要花费大把时间,这里只用知道以下四个标签就足够了,其他的都可以按照这个理解方式来明白它们的意思。

div

li

p

a

html代码中,标签都是成对出现的,有开始,就要有结束,且标签可以无限嵌套,如:

<开始标签>内容放中间

<开始标签>

<开始标签>

<开始标签>内容放中间

<开始标签>内容放中间

仔细观察上面的结构,每一个<开始标签>都有对应的一个,且是可以嵌套的,内容放在一组标签中间。

结合实战,我们在抓的目标网页中这些代码的表现是这样的:

第一个商品

  • 100元
  • 详情

    第二个商品

  • 200元
  • 详情

    第五个商品

  • 80元
  • 详情

    我们每个标签组合看成是一个矩形框,那么上面的html标签应该是这样的:

    用矩形框来表示标签组合

    注意看,标签组合的结构都是一样的,不一样的只是内容不同而已,这就是一个基本的代码块的结构了,实战中当然是比上面的要“复杂”一些,因为除了我这里贴出来的4个标签之外,还有好多各种标签甚至交叠出现会让你看的眼花缭乱,这个时候就需要静静了(虽然静静也帮不到啥忙),回想下标签的使用方式,有开始和结束,那么只要找到你想抓取的数据前后都有哪些标签,找出开始和结束标签,且包含了想要抓取的数据,那就算是找对了,这里除了用肉眼硬刚,还可以借助工具,看下面截图:

    火狐浏览器打开淘宝后,右键 查看元素

    展开div标签后可以看到更详细的标签组合

    英文功底好的可以用Google浏览器,这里用的火狐,全中文显示,比较好演示。

    如果是头一次接触html的,可能会头皮发麻,再次结合上面的四个标签以及矩形框来看看,你会发现就把我们想要的数据一层套在了一层里面而已,到这里基本上就可以把网页结构搞清楚了,接下来就该通过python中的BeautifulSoup模块来提取内容了,我公众号中已经有BeautifulSoup的基本用法学习手账了,有兴趣的可以在公众号‘小白学习手账’中查阅吧

    进阶内容:

    标签属性:看上面例子中的开始标签,除了标签名以外存在于开始标签内的,如class、id之类的,这就是属性

    属性值:class、id等号后面的就是值了

    css样式:控制各标签布局、展现形式

    js文件或代码块(标签是