BeautifulSoup
Posted zhaijihai
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BeautifulSoup相关的知识,希望对你有一定的参考价值。
findAll(tag,attributes,recursive,text,limit,keywords)
find(tag,attributes,recursive,text,keywords)
标签参数tag,他可以传一个标签的名称或多个标签名称组成的Python列表做标签参数.
bsObj.find_all({‘h1‘,‘h2‘,‘h3‘})
属性参数attributes使用一个Python字典封封装一个标签的若干属性和对应的属性值.
bsObj.find_all(‘span‘,{‘green‘,‘red‘})
在运行带有class的属性查找是会报错:
bsObj.find_all(class=‘green‘)
不过,可以用Beautiful提供的臃肿的方案:在class后面加一个下划线:
bsObj.find_all(class_=‘green‘)
与lambda一起使用
soup.find_all(lambda tag: len(tag.attrs) == 2)
会找出例如下面的标签:
<div class=‘body‘ id=‘content‘></div> <span style=‘color:red‘ class=‘title‘><span>
在BeautifulSoup这里面使用lambda表达式选择标签,将是正则表达式的完美代替方案.
以上是关于BeautifulSoup的主要内容,如果未能解决你的问题,请参考以下文章
Python练习册 第 0013 题: 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-),(http://tieba.baidu.com/p/2166231880)(代码片段
python 爬虫 requests+BeautifulSoup 爬取简单网页代码示例
python3 requests + BeautifulSoup 爬取阳光网投诉贴详情实例代码
使用 Python 和 BeautifulSoup(将网页源代码保存到本地文件中)