BeautifulSoup类继承了Tag类,然后Tag继承了PageElement(object)类
Tag类
class Tag(PageElement)
Tag类主要是对标签的管理
实例属性
| 属性 | 描述 |
|---|---|
| .name | 返回标签名称 |
| .namespace | |
| .prefix | |
| self.preserve_whitespace_tags | |
| .attrs | 标签属性 |
| .contents | 标签二进制文件 |
实例方法
| 方法 | 描述 |
|---|---|
| @def is_empty_element(self) | 是否为空 |
| @def stripped_strings(self) | |
| def get_text(self, separator="", strip=False,types=(NavigableString, CData)) | 获得文本 |
| def decompose(self) | |
| def clear(self, decompose=False) | 获取所有子标签 |
| def index(self, element) | 索引 |
| def get(self, key, default=None) | 获得标签 |
| def has_attr(self, key) | 获得属性 |
| def encode(self, encoding=DEFAULT_OUTPUT_ENCODING,indent_level=None, formatter=“minimal”,errors=“xmlcharrefreplace”) | |
| def decode(self, indent_level=None,eventual_encoding=DEFAULT_OUTPUT_ENCODING,formatter=“minimal”) | |
| def decode_contents(self, indent_level=None,eventual_encoding=DEFAULT_OUTPUT_ENCODING,formatter=“minimal”) | |
| def encode_contents(self, indent_level=None, encoding=DEFAULT_OUTPUT_ENCODING,formatter=“minimal”) | |
| def find(self, name=None, attrs={}, recursive=True, text=None,**kwargs): | |
| def find_all(self, name=None, attrs={}, recursive=True, text=None,limit=None, **kwargs) | 返回的是一个列表,所以不能直接用get_text()等标签的函数 |
| @def children(self) | |
| @def descendants(self) | |
| def childGenerator(self) | |
| def recursiveChildGenerator(self) | |
| def select_one(self, selector) | |
| def select(self, selector, _candidate_generator=None, limit=None) |
PageElement(object)
class PageElement(object)
PageElement主要是对html文件的管理
实例方法
| 方法 | 描述 |
|---|---|
| def find_next(self, name=None, attrs={}, text=None, **kwargs) | 返回匹配的第一项并显示它后一个标签 |
| def find_all_next(self, name=None, attrs={}, text=None, limit=None,**kwargs) | 同上,返回所有 |
| def find_next_sibling(self, name=None, attrs={}, text=None, **kwargs) | 返回其兄弟标签,并展示下一个 |
| def find_next_siblings(self, name=None, attrs={}, text=None, limit=None,**kwargs) | 同上,返回所有 |
| def find_previous(self, name=None, attrs={}, text=None, **kwargs) | 与next相反操作 |
| def find_all_previous(self, name=None, attrs={}, text=None, limit=None,**kwargs) | 与next相反操作 |
| def find_previous_sibling(self, name=None, attrs={}, text=None, **kwargs) | 与next相反操作 |
| def find_previous_siblings(self, name=None, attrs={}, text=None,limit=None, **kwargs) | 与next相反操作 |
| def find_parent(self, name=None, attrs={}, **kwargs) | 获得父标签 |
| def find_parents(self, name=None, attrs={}, limit=None, **kwargs) | 获得所有父标签 |
| @def next(self) | 获得下一个标签 |
| @def previous(self) | 获得上一个标签 |
| def _find_one(self, method, name, attrs, text, **kwargs) | |
| def _find_all(self, name, attrs, text, limit, generator, **kwargs) | |
| 这些生成器可以用于 | NavigableStrings and Tags |
| @def next_elements(self) | |
| @def next_siblings(self) | |
| @def previous_elements(self) | |
| @def previous_siblings(self) | |
| @def parents(self) | |
| def nextGenerator(self) | |
| def nextSiblingGenerator(self) | |
| def previousGenerator(self) | |
| def previousSiblingGenerator(self) | |
| def parentGenerator(self) |
#解析器
https://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html#id9
用html5lib
189

被折叠的 条评论
为什么被折叠?



