第一个小练习,我们要把这网站左侧的各种书籍的分类给提取出来
来,开始。第一步,最便捷的方式,右键点击第一个分类“Travel”,然后选择“检查”
检查会被打开,并且自动定位到element里面的标签位置
简单看一下右边的标签情况,很多<li>标签中,打开的是第一个<li>标签
<li>标签下又是一个<a>标签,那我们把这个<a>标签展开看一看
嗯,没错。Travel这个分类的文本内容就在这个标签下。接着我们继续多看一下几个<li>标签,会发现,每个<li>标签下都是一个分类的文本
那大概的思路是不是有啦?
同学可能会这么想:定位到<li>标签,爬它!
等等等等,别着急
真的以为定位到<li>标签就好了?
再检查一下吧,用ctrl+F搜索一下<li>标签
结果如下
搜出来的第一个<li>标签,不是我们需要的内容。这说明,如果直接定位到<li>标签是不准确的
所以我们还是一步步来定位,不用要求一步到位哦
这里需要提取好几层呢,耐心一点,精准一点
最后,我们可以把程序写出这个样子
这里有三处需要注意:
1、第7行,这里是把所有的标签定位连写,同学们在自己练习的时候,可以分开一步步来写;
2、第7行,最后用的find_all(‘li’)是把所有<li>标签爬取下来,得到的是一个列表;
3、第12行,tag_name.text是提取出<a>标签的文本部分,.strip() 是将文本部分的特殊字符切除,同学们在练习的时候,可以把这个去掉和加上,看看两者的区别是什么;
联系客服