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 相关文章推荐
Django自定义插件实现网站登录验证码功能
Apr 19 Python
Python matplotlib绘图可视化知识点整理(小结)
Mar 16 Python
对Python3中dict.keys()转换成list类型的方法详解
Feb 03 Python
Python同步遍历多个列表的示例
Feb 19 Python
Django restframework 源码分析之认证详解
Feb 22 Python
django框架实现模板中获取request 的各种信息示例
Jul 01 Python
Python自动化完成tb喵币任务的操作方法
Oct 30 Python
关于pandas的离散化,面元划分详解
Nov 22 Python
python flask中动态URL规则详解
Nov 22 Python
解析Tensorflow之MNIST的使用
Jun 30 Python
基于python判断字符串括号是否闭合{}[]()
Sep 21 Python
浅谈python中的多态
Jun 15 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
声音就能俘获人心,蕾姆,是哪个漂亮小姐姐配音呢?
2020/03/03 日漫
PHP文件上传主要代码讲解
2013/09/30 PHP
PHP生成树的方法
2015/07/28 PHP
PHP数据库操作Helper类完整实例
2016/05/11 PHP
JAVASCRIPT style 中visibility和display之间的区别
2010/01/22 Javascript
JavaScript 格式字符串的应用
2010/03/29 Javascript
JavaScript设计模式之工厂模式和构造器模式
2015/02/11 Javascript
jQuery源码解读之removeAttr()方法分析
2015/02/20 Javascript
JavaScrip调试技巧之断点调试
2015/10/22 Javascript
js判断输入字符串是否为空、空格、null的方法总结
2016/06/14 Javascript
基于JS代码实现实时显示系统时间
2016/06/16 Javascript
javascript ASCII和Hex互转的实现方法
2016/12/27 Javascript
浅谈事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
2017/07/22 jQuery
基于Vue框架vux组件库实现上拉刷新功能
2017/11/28 Javascript
vue中实现拖动调整左右两侧div的宽度的示例代码
2020/07/22 Javascript
详解Vue中的自定义指令
2020/12/07 Vue.js
Python模块结构与布局操作方法实例分析
2017/07/24 Python
Python机器学习之SVM支持向量机
2017/12/27 Python
浅析python参数的知识点
2018/12/10 Python
python合并已经存在的sheet数据到新sheet的方法
2018/12/11 Python
深入解析Python小白学习【操作列表】
2019/03/23 Python
Python中字典与恒等运算符的用法分析
2019/08/22 Python
Atom Python 配置Python3 解释器的方法
2019/08/28 Python
python离线安装外部依赖包的实现
2020/02/13 Python
new_zeros() pytorch版本的转换方式
2020/02/18 Python
详解Pytorch显存动态分配规律探索
2020/11/17 Python
详解python3 GUI刷屏器(附源码)
2021/02/18 Python
乌克兰在线商店的价格比较:Price.ua
2019/07/26 全球购物
Noon埃及:埃及在线购物
2019/11/26 全球购物
设计模式的基本要素是什么
2014/04/21 面试题
餐厅总厨求职信
2014/03/04 职场文书
男女朋友协议书
2014/04/23 职场文书
《青蛙看海》教学反思
2014/04/23 职场文书
2017年寒假社区服务活动总结
2016/04/06 职场文书
新手必备Python开发环境搭建教程
2021/05/28 Python
Python使用mitmproxy工具监控手机 下载手机小视频
2022/04/18 Python