爬虫三之beautifulsoup

基本使用

from bs4 import BeautifulSoup

soup = BeautifulSoup(html#,'lxml','xml','html5lib')
soup.prettify()#补全网页格式
soup.title.string#title里的内容

标签选择器

就是相当于soup的属性,soup.Tag
有多个,只返回第一个

获取名称

在标签后加 .name

获取属性

soup.p.attrs['name']
soup.p['name']

子节点

soup.Tag.contents
子节点以列表形式返回

soup.Tag.children
迭代器,需要循环才能输出

子孙节点

soup.Tag.descendants
同样为迭代器

父节点和祖先节点

父节点
soup.Tag.parent
祖先节点
soup.Tag.parents

兄弟节点

soup.Tag.next_siblings
soup.Tag.previous_siblings

处理方式很快,但用途有限

标准选择器

**find_all(name, attrs, recursive, text, kwargs)

name

find_all('...')

attrs:

find_all(id='...')
find_all(class_='...')

text也可以用上述方法,text='...'
find 返回单个元素

常用命令

find_parent()
find_parents()

find_next_sibling()
find_next_siblings()

find_previous_siblings()

find_all_next()
find_next()
#返回节点后符合条件的节点

find_all_previous()

CSS选择器

通过select()直接传入,即可完成选择

选择class时输入'' .class1 .class2"
选择Tag时直接传入即可
**选择id时输入 "#id" **

获取内容get_text()

posted @ 2019-07-12 18:47  鬼鬼果果  阅读(123)  评论(0编辑  收藏  举报