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 协程的详细用法使用和例子
Jun 15 Python
Python sorted函数详解(高级篇)
Sep 18 Python
Python类的继承、多态及获取对象信息操作详解
Feb 28 Python
itchat-python搭建微信机器人(附示例)
Jun 11 Python
Python 使用list和tuple+条件判断详解
Jul 30 Python
pytorch中如何使用DataLoader对数据集进行批处理的方法
Aug 06 Python
python+rsync精确同步指定格式文件
Aug 29 Python
python处理excel绘制雷达图
Oct 18 Python
python 实现矩阵按对角线打印
Nov 29 Python
Pytorch中的VGG实现修改最后一层FC
Jan 15 Python
Python制作数据预测集成工具(值得收藏)
Aug 21 Python
使用python-cv2实现视频的分解与合成的示例代码
Oct 26 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桌面中心(三) 修改数据库
2007/03/11 PHP
PHP mkdir()定义和用法
2009/01/14 PHP
php 无限级缓存的类的扩展
2009/03/16 PHP
php数组排序usort、uksort与sort函数用法
2014/11/17 PHP
Yii使用EasyWechat实现小程序获取用户的openID的方法
2020/04/29 PHP
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
Javascript字符串拼接小技巧(推荐)
2016/06/02 Javascript
jQuery on()方法绑定动态元素的点击事件无响应的解决办法
2016/07/07 Javascript
基于AngularJS实现iOS8自带的计算器
2016/09/12 Javascript
JS回调函数简单用法示例
2017/02/09 Javascript
详解Node中导入模块require和import的区别
2017/08/11 Javascript
JS实现点击链接切换显示隐藏内容的方法
2017/10/19 Javascript
Vue Promise的axios请求封装详解
2018/08/13 Javascript
vue使用i18n实现国际化的方法详解
2019/09/05 Javascript
javaScript中indexOf用法技巧
2019/11/26 Javascript
jQuery实现移动端下拉展现新的内容回弹动画
2020/06/24 jQuery
Python采集腾讯新闻实例
2014/07/10 Python
Python中的Classes和Metaclasses详解
2015/04/02 Python
Python的爬虫框架scrapy用21行代码写一个爬虫
2017/04/24 Python
Python实现破解猜数游戏算法示例
2017/09/25 Python
Python3.4实现远程控制电脑开关机
2018/02/22 Python
对python PLT中的image和skimage处理图片方法详解
2019/01/10 Python
Python获取一个用户名的组ID过程解析
2019/09/03 Python
python元组的概念知识点
2019/11/19 Python
基于Python采集爬取微信公众号历史数据
2020/11/27 Python
CSS3动画animation实现云彩向左滚动
2014/05/09 HTML / CSS
最热门的自我评价
2013/12/30 职场文书
医药营销个人求职信范文
2014/02/07 职场文书
高一数学教学反思
2014/02/07 职场文书
2014学校庆三八妇女节活动总结
2014/03/01 职场文书
《卖木雕的少年》教学反思
2014/04/11 职场文书
幼师中班个人总结
2015/02/12 职场文书
质量负责人岗位职责
2015/02/15 职场文书
汽车销售合同文本
2019/08/08 职场文书
python人工智能human learn绘图可创建机器学习模型
2021/11/23 Python
PostgreSQL怎么创建分区表详解
2022/06/25 PostgreSQL