Python爬虫_BeautifulSoup
Python爬虫Day_7——BeautifulSoup
- The code for ever.
- Later equals never.
- The fault, dear Brutus, is not in our stars, but in ourselves that we are underlings.
- 整洁的代码只做好一件事;
- 能通过所有的测试;没有重复的代码;体现系统中的全部设计理念;包括尽量少的实体,如类、方法、函数等;
- 类名和对象名应当是名词或名词短语;方法名应当是动词或动词短语;
BeautifulSoup笔记:
find_all的使用:
- 在提取标签的时候,第一个参数是标签的名字,然后如果在提取标签的时候想要使用标签属性进项过滤,那么可以在这个方法中通过关键字参数的形式,降属性的名字以及对应的值传进去,或者使用
attrs
属性,将所有的属性以及对应的值放在一个字典中传给attrs
属性。 - 有些时候,在提取标签的时候,不想提取那么多,那么可以使用
limit
参数,限制提取多少个。
find与find_all的区别:
- find:只返回第一个符合条件的标签。
- find_all:返回所有符合条件的标签(以列表的形式)。
使用find和find_all的过滤条件:
- 关键字参数:将属性的名字作为关键字参数的名字,以及属性的值作为关键字参数的值进行过滤。
- attrs参数:将属性条件放到一个字典中,传给attrs参数。
获取标签的属性
通过下标获取:通过标签的下标的方式。
1
href = a['href']
通过attrs属性获取:
1
href = a.attrs['href']
string、strings和stripped_strings属性以及get_text方法:
- string:获取某个标签下的非标签字符串,如果标签下有多行非标签字符串,则无法获取。(返回字符串)
- strings:获取某个标签下的子孙非标签字符串。(返回生成器)
- stripped_strings:获取某个标签下的子孙非标签字符串,会去掉空白字符串。(返回生成器)
- get_text:获取某个标签下的子孙非标签字符串。(返回字符串)
- 三观不同不为友,层次不同不争辩。
- 从此君王不早朝。�朝。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 WineMonk!
评论