python爬虫beautifulsoup解析html方法


Posted in Python onDecember 07, 2020

用BeautifulSoup 解析html和xml字符串

python爬虫beautifulsoup解析html方法

实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
from bs4 import BeautifulSoup
import re

#待分析字符串
html_doc = """
<html>
<head>
  <title>The Dormouse's story</title>
</head>
<body>
<p class="title aq">
  <b>
    The Dormouse's story
  </b>
</p>

<p class="story">Once upon a time there were three little sisters; and their names were
  <a href="http://example.com/elsie" rel="external nofollow" class="sister" id="link1">Elsie</a>,
  <a href="http://example.com/lacie" rel="external nofollow" class="sister" id="link2">Lacie</a> 
  and
  <a href="http://example.com/tillie" rel="external nofollow" class="sister" id="link3">Tillie</a>;
  and they lived at the bottom of a well.
</p>

<p class="story">...</p>
"""


# html字符串创建BeautifulSoup对象
soup = BeautifulSoup(html_doc, 'html.parser', from_encoding='utf-8')

#输出第一个 title 标签
print soup.title

#输出第一个 title 标签的标签名称
print soup.title.name

#输出第一个 title 标签的包含内容
print soup.title.string

#输出第一个 title 标签的父标签的标签名称
print soup.title.parent.name

#输出第一个 p 标签
print soup.p

#输出第一个 p 标签的 class 属性内容
print soup.p['class']

#输出第一个 a 标签的 href 属性内容
print soup.a['href']
'''
soup的属性可以被添加,删除或修改. 再说一次, soup的属性操作方法与字典一样
'''
#修改第一个 a 标签的href属性为 http://www.baidu.com/
soup.a['href'] = 'http://www.baidu.com/'

#给第一个 a 标签添加 name 属性
soup.a['name'] = u'百度'

#删除第一个 a 标签的 class 属性为
del soup.a['class']

##输出第一个 p 标签的所有子节点
print soup.p.contents

#输出第一个 a 标签
print soup.a

#输出所有的 a 标签,以列表形式显示
print soup.find_all('a')

#输出第一个 id 属性等于 link3 的 a 标签
print soup.find(id="link3")

#获取所有文字内容
print(soup.get_text())

#输出第一个 a 标签的所有属性信息
print soup.a.attrs


for link in soup.find_all('a'):
  #获取 link 的 href 属性内容
  print(link.get('href'))

#对soup.p的子节点进行循环输出  
for child in soup.p.children:
  print(child)

#正则匹配,名字中带有b的标签
for tag in soup.find_all(re.compile("b")):
  print(tag.name)

爬虫设计思路:

python爬虫beautifulsoup解析html方法

详细手册:

https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/

到此这篇关于python爬虫beautifulsoup解析html方法 的文章就介绍到这了,更多相关beautifulsoup解析html内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python如何压缩新文件到已有ZIP文件
Mar 14 Python
Python 元类实例解析
Apr 04 Python
python3.5基于TCP实现文件传输
Mar 20 Python
Python-while 计算100以内奇数和的方法
Jun 11 Python
python tkinter库实现气泡屏保和锁屏
Jul 29 Python
安装Pycharm2019以及配置anconda教程的方法步骤
Nov 11 Python
使用python绘制二维图形示例
Nov 22 Python
python 中值滤波,椒盐去噪,图片增强实例
Dec 18 Python
Python引入多个模块及包的概念过程解析
Sep 21 Python
Python 列表推导式需要注意的地方
Oct 23 Python
Python爬虫+tkinter界面实现历史天气查询的思路详解
Feb 22 Python
Python中Cookies导出某站用户数据的方法
May 17 Python
python可视化 matplotlib画图使用colorbar工具自定义颜色
Dec 07 #Python
用ldap作为django后端用户登录验证的实现
Dec 07 #Python
Django中使用Celery的方法步骤
Dec 07 #Python
python集合的新增元素方法整理
Dec 07 #Python
python进行二次方程式计算的实例讲解
Dec 06 #Python
paramiko使用tail实时获取服务器的日志输出详解
Dec 06 #Python
python中二分查找法的实现方法
Dec 06 #Python
You might like
php 获取客户端的真实ip
2009/11/30 PHP
PHP排序算法的复习和总结
2012/02/15 PHP
深入解析php之apc
2013/05/15 PHP
laravel model 两表联查示例
2019/10/24 PHP
jquery随意添加移除html的实现代码
2011/06/21 Javascript
JQuery入门——事件切换之toggle()方法应用介绍
2013/02/05 Javascript
js判断IE浏览器版本过低示例代码
2013/11/22 Javascript
当鼠标滑过文本框自动选中输入框内容的JS代码分享
2013/11/26 Javascript
微信WeixinJSBridge API使用实例
2015/05/25 Javascript
学习JavaScript鼠标响应事件
2015/12/25 Javascript
微信小程序中使元素占满整个屏幕高度实现方法
2016/12/14 Javascript
JavaScript实现移动端轮播效果
2017/06/06 Javascript
echarts学习笔记之图表自适应问题详解
2017/11/22 Javascript
Vue导出页面为PDF格式的实现思路
2018/07/31 Javascript
VUE引入第三方js包及调用方法讲解
2019/03/01 Javascript
简单易扩展可控性强的Jquery转盘抽奖程序
2019/03/16 jQuery
vue@cli3项目模板怎么使用public目录下的静态文件
2020/07/07 Javascript
简单谈谈python的反射机制
2016/06/28 Python
Python存取XML的常见方法实例分析
2017/03/21 Python
python使用正则表达式的search()函数实现指定位置搜索功能
2017/11/10 Python
对numpy中轴与维度的理解
2018/04/18 Python
PYTHON基础-时间日期处理小结
2018/05/05 Python
Python3.5 Pandas模块缺失值处理和层次索引实例详解
2019/04/23 Python
详解Python用三种方式统计词频的方法
2019/07/29 Python
python+Selenium自动化测试——输入,点击操作
2020/03/06 Python
一款纯css3实现的漂亮的404页面的实例教程
2014/11/27 HTML / CSS
CSS3 实现飘动的云朵动画
2020/12/01 HTML / CSS
html5 http的轮询和Websocket原理
2018/10/19 HTML / CSS
高性能钓鱼服装:Huk Gear
2019/02/20 全球购物
eHarmony英国:全球领先的认真恋爱约会平台之一
2020/11/16 全球购物
工商学院毕业生自荐信
2013/11/12 职场文书
关于建议书的格式范文
2014/05/20 职场文书
门卫岗位职责说明书
2014/08/18 职场文书
关于十八大的演讲稿
2014/09/15 职场文书
2016大学生暑期三下乡心得体会
2016/01/23 职场文书
python模块与C和C++动态库相互调用实现过程示例
2021/11/02 Python