【网络安全带你练爬虫-100练】第3练:遍历获取到的列表中元素

目录

一、前言:

二、分析代码

三、完善代码


一、前言:

(1)本练,我们来完善一下对于数据的处理

(2)对于同一标签内的内容的遍历爬取

上一段代码的,我们是不是在那个曾用名、高新技术企业、企业技术中兴

(也就是对于的企业的描述那里,指爬取到第一个)



二、分析代码

上一段代码:

company_type = item.find('div', attrs={'class': 'index_tag-list__wePh_'}).find_all('div', attrs={'class': 'index_tag-common__edIee'})[0].text

代码注释:

(1)item.find('div', attrs={'class': 'index_tag-list__wePh_'}) 表示在变量 item 所代表的HTML页面中查找具有 class 属性为 'index_tag-list__wePh_' 的 <div> 元素。这个方法返回的是第一个满足条件的 <div> 元素。

(2).find_all('div', attrs={'class': 'index_tag-common__edIee'}) 表示在前面找到的 <div> 元素内继续查找具有 class 属性为 'index_tag-common__edIee' 的所有 <div> 元素。这个方法返回的是一个列表,包含满足条件的所有元素。

(3)[0].text 表示从前面返回的列表中取出第一个元素,并获取其文本内容。.text 是 BeautifulSoup 库中的方法,用于提取元素的文本内容。


运行结果


三、完善代码

修改代码:

要获取class属性为index_tag-common__edIee的div元素中的所有文本内容

company_type = item.find('div', attrs={'class': 'index_tag-list__wePh_'}).find_all('div', attrs={'class': 'index_tag-common__edIee'}) 
tpye_texts = [element.text for element in company_type]

这将返回一个包含所有匹配的div元素中的文本内容的列表。


注释:

(1)item.find('div', attrs={'class': 'index_tag-list__wePh_'}) 表示在变量 item 所代表的 HTML 页面中查找具有 class 属性为 'index_tag-list__wePh_' 的 <div> 元素。这个方法返回的是第一个满足条件的 <div> 元素。

(2).find_all('div', attrs={'class': 'index_tag-common__edIee'}) 表示在前面找到的 <div> 元素内继续查找具有 class 属性为 'index_tag-common__edIee' 的所有 <div> 元素。这个方法返回的是一个列表,包含满足条件的所有元素。

(3)type_texts = [element.text for element in company_type] 是一个列表推导式。它遍历名为 company_type 的列表中的每个元素,并使用 .text 方法获取每个元素的文本内容。这样就创建了一个新的列表 type_texts,其中包含了 company_type 列表中每个元素的文本内容。


结果展示:



网络安全小圈子

README.md · 书半生/网络安全知识体系-实战中心 - 码云 - 开源中国 (gitee.com)icon-default.png?t=N5K3https://gitee.com/shubansheng/Treasure_knowledge/blob/master/README.md

GitHub - BLACKxZONE/Treasure_knowledgeicon-default.png?t=N5K3https://github.com/BLACKxZONE/Treasure_knowledge

猜你喜欢

转载自blog.csdn.net/qq_53079406/article/details/131547500