这次的笔记主要和大家分享BeautifulSoup的一些用法。
数据定位
查找
BS一个很大的作用就是可以对HTML中的tag进行定位。其中最常用的函数就是find()和findAll(),这两个函数其实功能相仿,差距在于一个只寻找最近的tag,另一个会查找所有的标签。其主要参数如下:
tag : 所要查找的tag,格式为字符串或列表(一系列tag)
attributes : 所要查找tag的attributes,格式为字典,例如
.find("span", { "class" : "green", "class" : "red" })
这两个基本是最常用的参数
text : 指定tag的内容,注意是全部内容而非部分内容,但是可以使用正则表达式进行模糊匹配
keyword : 类似于attributes,不过前者是“或”判断,后者为“和”判断
移动
BS也可以在不同节点间移动
.children : 下一级的子节点
.descendants : 所有子节点
.parent : 父节点
.next_siblings() .next_sibling() : 之后所有/一个兄弟(同一级)节点,不包括这个节点
.previous_siblings() .previous_sibling() : 之前所有/一个兄弟节点,不包括这个节点
.find_next_sibling() .find_previous_sibling() : 同前
查找爱因斯坦的名言
我们这次要爬取的网站是Quotes to Sc