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的SQLAlchemy框架使用入门
Apr 29 Python
利用Python爬取微博数据生成词云图片实例代码
Aug 31 Python
Python编程把二叉树打印成多行代码
Jan 04 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
Aug 05 Python
Python使用爬虫抓取美女图片并保存到本地的方法【测试可用】
Aug 30 Python
Windows10下 python3.7 安装 facenet的教程
Sep 10 Python
python实现批量修改文件名
Mar 23 Python
Pytorch 使用CNN图像分类的实现
Jun 16 Python
如何让python的运行速度得到提升
Jul 08 Python
如何在mac版pycharm选择python版本
Jul 21 Python
详解Python中list[::-1]的几种用法
Nov 16 Python
python数字图像处理之对比度与亮度调整示例
Jun 28 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
nginx+php-fpm配置文件的组织结构介绍
2012/11/07 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
PHP5.5基于mysqli连接MySQL数据库和读取数据操作实例详解
2019/02/16 PHP
Laravel 登录后清空COOKIE的操作方法
2019/10/14 PHP
jQuery中jqGrid分页实现代码
2011/11/04 Javascript
JS取request值以及自动执行使用示例
2014/02/24 Javascript
chrome调试javascript详解
2015/10/21 Javascript
js鼠标点击图片切换效果实现代码
2015/11/19 Javascript
全面解析Bootstrap表单使用方法(表单控件)
2015/11/24 Javascript
JavaScript运动框架 多物体任意值运动(三)
2017/05/17 Javascript
详解vue数组遍历方法forEach和map的原理解析和实际应用
2018/11/15 Javascript
Vue 子组件与数据传递问题及注意事项
2019/07/11 Javascript
微信自定义分享链接信息(标题,图片和内容)实现过程详解
2019/09/04 Javascript
javascript设计模式 ? 职责链模式原理与用法实例分析
2020/04/16 Javascript
Python中的列表知识点汇总
2015/04/14 Python
python类装饰器用法实例
2015/06/04 Python
Python实现的购物车功能示例
2018/02/11 Python
Python在groupby分组后提取指定位置记录方法
2018/04/20 Python
Python中一些不为人知的基础技巧总结
2018/05/19 Python
python实现批量nii文件转换为png图像
2019/07/18 Python
pandas 选取行和列数据的方法详解
2019/08/08 Python
python实现高斯投影正反算方式
2020/01/17 Python
Python Tornado核心及相关原理详解
2020/06/24 Python
解决PyCharm不在run输出运行结果而不是再Console里输出的问题
2020/09/21 Python
python 5个实用的技巧
2020/09/27 Python
pycharm激活码2020最新分享适用pycharm2020最新版亲测可用
2020/11/22 Python
CSS3中的display:grid,网格布局介绍
2019/10/30 HTML / CSS
Soft Cotton捷克:来自爱琴海棉花的浴袍
2017/02/01 全球购物
作为网站管理者应当如何防范XSS
2014/08/16 面试题
精选干货:Java精选笔试题附答案
2014/01/18 面试题
探亲假请假条
2014/04/11 职场文书
美术社团活动总结
2014/06/27 职场文书
民主评议党员自我鉴定
2014/10/21 职场文书
通报表扬范文
2015/01/17 职场文书
社区活动总结范文
2015/05/07 职场文书
Win2008系统搭建DHCP服务器
2022/06/25 Servers