iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python Beautiful Soup模块如何使用
  • 152
分享到

Python Beautiful Soup模块如何使用

2023-07-05 06:07:58 152人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

本文小编为大家详细介绍“python Beautiful Soup模块如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python Beautiful Soup模块如何使用”文章能帮助大家解决

本文小编为大家详细介绍“python Beautiful Soup模块如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python Beautiful Soup模块如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

一、模块简介

Beautiful Soup 是一个可以从html或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间.

二、方法利用

1、引入模块

# 引入html_doc = """<html><head><title>The DORMouse's story</title></head><body><p class="title"><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>"""from bs4 import BeautifulSoupsoup = BeautifulSoup(html_doc, 'html.parser')

四种解析器

Python Beautiful Soup模块如何使用

2、几个简单的浏览结构化数据的方法

#获取Tag,通俗点就是HTML中的一个个标签

#获取Tag,通俗点就是HTML中的一个个标签soup.title                    # 获取整个title标签字段:<title>The Dormouse's story</title>soup.title.name               # 获取title标签名称  :titlesoup.title.parent.name        # 获取 title 的父级标签名称:headsoup.p                        # 获取第一个p标签字段:<p class="title"><b>The Dormouse's story</b></p>soup.p['class']               # 获取第一个p中class属性值:titlesoup.p.get('class')           # 等价于上面soup.a                        # 获取第一个a标签字段soup.find_all('a')            # 获取所有a标签字段soup.find(id="link3")         # 获取属性id值为link3的字段soup.a['class'] = "newClass"  # 可以对这些属性和内容等等进行修改del bs.a['class']             # 还可以对这个属性进行删除soup.find('a').get('id')      # 获取class值为story的a标签中id属性的值soup.title.string             # 获取title标签的值  :The Dormouse's story

三、具体利用

1、获取拥有指定属性的标签

方法一:获取单个属性soup.find_all('div',id="even")            # 获取所有id=even属性的div标签soup.find_all('div',attrs={'id':"even"})    # 效果同上方法二:soup.find_all('div',id="even",class_="square")            # 获取所有id=even并且class=square属性的div标签soup.find_all('div',attrs={"id":"even","class":"square"})    # 效果同上

2、获取标签的属性值

方法一:通过下标方式提取for link in soup.find_all('a'):    print(link['href'])        //等同于 print(link.get('href'))方法二:利用attrs参数提取for link in soup.find_all('a'):    print(link.attrs['href'])

3、获取标签中的内容

divs = soup.find_all('div')        # 获取所有的div标签for div in divs:                   # 循环遍历div中的每一个div    a = div.find_all('a')[0]      # 查找div标签中的第一个a标签          print(a.string)              # 输出a标签中的内容如果结果没有正确显示,可以转换为list列表

4、stripped_strings

去除\n换行符等其他内容 stripped_strings

divs = soup.find_all('div')for div in divs:    infos = list(div.stripped_strings)        # 去掉空格换行等    bring(infos)

四、输出

1、格式化输出prettify()

prettify() 方法将Beautiful Soup的文档树格式化后以Unicode编码输出,每个XML/HTML标签都独占一行

markup = '<a href="http://example.com/" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >I linked to <i>example.com</i></a>'soup = BeautifulSoup(markup)soup.prettify()# '<html>\n <head>\n </head>\n <body>\n  <a href="http://example.com/" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >\n...'print(soup.prettify())# <html>#  <head>#  </head>#  <body>#   <a href="http://example.com/" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >#    I linked to#    <i>#     example.com#    </i>#   </a>#  </body># </html>

2、get_text()

如果只想得到tag中包含的文本内容,那么可以调用 get_text() 方法,这个方法获取到tag中包含的所有文版内容包括子孙tag中的内容,并将结果作为Unicode字符串返回:

markup = '<a href="http://example.com/" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >\nI linked to <i>example.com</i>\n</a>'soup = BeautifulSoup(markup)soup.get_text()u'\nI linked to example.com\n'soup.i.get_text()u'example.com'

读到这里,这篇“Python Beautiful Soup模块如何使用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网Python频道。

--结束END--

本文标题: Python Beautiful Soup模块如何使用

本文链接: https://www.lsjlt.com/news/349926.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python Beautiful Soup模块如何使用
    本文小编为大家详细介绍“Python Beautiful Soup模块如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python Beautiful Soup模块如何使用”文章能帮助大家解决...
    99+
    2023-07-05
  • Python中的Beautiful Soup模块的用法
    这篇文章主要介绍“Python中的Beautiful Soup模块的用法”,在日常操作中,相信很多人在Python中的Beautiful Soup模块的用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Pyt...
    99+
    2023-06-02
  • python爬虫beautiful soup的使用方式
    目录前言一,Beautiful Soup简介二,Beautiful Soup的解析器2.1 各种解析器一览2.2 引入解析器的语法三,Beautiful Soup解析得到的四种对象3...
    99+
    2024-04-02
  • Python如何使用Beautiful Soup(BS4)库解析HTML和XML
    一、Beautiful Soup概述:Beautiful Soup支持从HTML或XML文件中提取数据的Python库;它支持Python标准库中的HTML解析器,还支持一些第三方的解析器lxml。Beautiful Soup自动将输入文档...
    99+
    2023-05-14
    html Python xml
  • Python使用Beautiful Soup(BS4)库解析HTML和XML
    目录一、Beautiful Soup概述:安装:二、BeautifulSoup4简单使用三、BeautifulSoup4四大对象种类1、Tag:标签2、NavigableString...
    99+
    2024-04-02
  • 使用Python Beautiful Soup解析HTML内容的方法
    今天小编给大家分享的是使用Python Beautiful Soup解析HTML内容的方法,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。目录Beautiful S...
    99+
    2023-07-06
  • Python怎么使用Beautiful Soup库解析HTML和XML
    今天小编给大家分享一下Python怎么使用Beautiful Soup库解析HTML和XML的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下...
    99+
    2023-07-06
  • Python 页面解析Beautiful Soup库的使用方法
    目录1.Beautiful Soup库简介2.Beautiful Soup库方法介绍2.1 find_all()2.2 find()2.3 select()3.代码实例1....
    99+
    2024-04-02
  • python网络爬虫精解之Beautiful Soup的使用说明
    目录一、Beautiful Soup的介绍二、Beautiful Soup的使用1、节点选择器2、提取信息3、关联选择4、方法选择器5、CSS选择器一、Beautiful Soup的...
    99+
    2024-04-02
  • python如何使用import模块
    这篇文章给大家分享的是有关python如何使用import模块的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。import模块在Python经常使用import声明,以使用其他模块...
    99+
    2024-04-02
  • Python pluggy模块如何使用
    本篇内容介绍了“Python pluggy模块如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1 pluggy 简介plug...
    99+
    2023-06-30
  • Python decimal模块如何使用
    这篇文章主要介绍“Python decimal模块如何使用”,在日常操作中,相信很多人在Python decimal模块如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python&...
    99+
    2023-07-05
  • 如何使用python xml模块
    本篇内容主要讲解“如何使用python xml模块”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用python xml模块”吧!一、xml简介xml是实现不同语言或程序之间进行数据交换的协...
    99+
    2023-06-07
  • python如何使用itertools模块
    这篇文章主要为大家展示了“python如何使用itertools模块”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python如何使用itertools模块”这篇文章吧。高效的itertools...
    99+
    2023-06-27
  • Python async模块如何使用
    这篇文章主要介绍“Python async模块如何使用”,在日常操作中,相信很多人在Python async模块如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python ...
    99+
    2023-07-05
  • python如何使用timeit模块
    这篇文章给大家分享的是有关python如何使用timeit模块的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。timeit模块timeit 模块提供了测量 Python 小段代码执行时间的方法,可以在命令行界面直接...
    99+
    2023-06-17
  • python ffmpeg模块如何使用
    要使用Python中的FFmpeg模块,可以按照以下步骤进行:1. 安装FFmpeg:在你的系统上安装FFmpeg。你可以从官方网站...
    99+
    2023-10-12
    python
  • Python中base64模块如何使用
    Python中base64模块如何使用,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Python base64模块是用来作base64编码解码的。这种编码方式在...
    99+
    2023-06-17
  • python的argparse模块如何使用
    这篇文章主要介绍“python的argparse模块如何使用”,在日常操作中,相信很多人在python的argparse模块如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python的argparse...
    99+
    2023-07-05
  • python中os模块如何使用
    这篇文章主要介绍了python中os模块如何使用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python有哪些常用库python常用的库:1.requesuts;2.scr...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作