返回顶部
首页 > 资讯 > 后端开发 > Python >python爬虫怎么使用BeautifulSoup库
  • 174
分享到

python爬虫怎么使用BeautifulSoup库

2023-06-02 01:06:24 174人浏览 薄情痞子

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

摘要

本篇内容介绍了“python爬虫怎么使用BeautifulSoup库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  BeautiSoup类

本篇内容介绍了“python爬虫怎么使用BeautifulSoup库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

  BeautiSoup类的基本元素及用bs4遍历html基本方法

  1,BeautifulSoup类的基本元素

  有5种基本元素:

  Tag: 标签,最基本的信息组织单元, .

  Name: 标签名字, ..name :返回一个字符串

  Attributes: 标签的属性, ..attrs :返回一个字典类型

  NavigableString:标签中的字符串, ..string :返回一个字符串

  Comment: 标签中的注释信息,会在 ..string中获得。

  比如现在有一个HTML文档:

  The demo python introduces several Python courses.

  Python is a wonderful general-purpose programming language. You can learn Python from novice to professional by tracking the following courses:

  Basic Python

  and

  Advanced Python.

  This is not a Comment.

  我们对此文档用BS类的基本元素进行应用:

  先煲一锅汤:>>> soup = BeautifulSoup(html, "html.parser")

  用 .获得一个标签的全部信息:

  如:>>> soup.p

python爬虫怎么使用BeautifulSoup库

  用.name获得这个标签的名字:

  如:>>> p.name

python爬虫怎么使用BeautifulSoup库

  Tag属性还有另外一个重要的用法, 就是当我们对一个标签内的子节点进行遍历时,可能会有不是标签的节点,比如’\n’等,此时可利用bs4库提供的bs4.element.Tag属性来进行甄别。

  用到 isinstance()方法。比如:isinstance(soup.a, bs4.element.Tag)

python爬虫怎么使用BeautifulSoup库

  用.attrs获得这个标签的属性:

  如>>> soup.a.attrs

python爬虫怎么使用BeautifulSoup库

  可以对a标签的具体属性进行获得:>>> soup.a['href']

python爬虫怎么使用BeautifulSoup库

  用.string获得这个标签中的字符串信息:

  如:>>> soup.p.string:

python爬虫怎么使用BeautifulSoup库

  我们看到.string可以跨越标签,直接获得标签内的字符串。

  但是: 当外层标签内含有多个平行的内层标签时,就不行了:

  比如:郑州人流医院哪家好 Http://m.zzzy120.com/

  此p标签内有多个平行的a标签,直接用p.string返回为None

  最后,说说Comment属性

  可用>>> soup.b.string来获得注释的信息:

  二者类型是不同的,因此可用bs4库的 isinstance(, bs4.element.Comment)来过滤注释信息,或者获得注释信息。

  2,用BeautifulSoup遍历HTML的方式

  1,下行遍历:

  3个属性:

  1,.contents : 子节点的列表,将所有儿子节点存入列表(还包括所有的\n)

  2,.children : 子节点的迭代类型,与.contents类似,用于循环遍历儿子节点。

  3, .descendants : 包含所有的子孙节点。与children一样,只能用于迭代。

  2,上行遍历:

  2个属性:

  1,.parent : 节点的父亲标签

  2,.parents: 节点先辈的迭代类型,用于循环遍历先辈节点(所有的先辈)。

  3,平行遍历:

  4个平行遍历属性:(需要发生在同一个父亲节点下的各节点间。)

  1,.next_sibling : 返回按照HTML文本顺序的下一个平行节点标签。

  2,.previous_sibling: 返回。。的上一个平行节点标签。

  3,.next_siblings: 迭代类型, 返回按照顺序的所有平行节点标签。

  4,.previous_sibings:迭代类型 。。。。。。。。。

  3,BeautifulSoup的格式化输出与编码:

  prettify()函数:能够为HTML标签,文本增加换行符,

  1,世界上的所有信息都可以用3中标记形式进行标记。

  XML 格式: 类似于HTML,标签形式。

  JSON: 有类型的键值对 key:value 如:

  "name" : "北京" -----;一个键值对

  "name" : ["hello", "hello"] -----: 一个键对应多个值1

  "name" : {"subkey" : "subvalue"} -----:一个键值对作为一个值对应于一个键

  YAML: 无类型的键值对 : key : value

  name : 北京

  name :

  -newName : 北京

  -newName : 上海 (并列)

  name :

  newname : hello (嵌套)

  比较::

  XML用<>标记 : 扩展性好,但是繁琐。 Internet上的信息交互与传递,多用XML。

  jsON用“” : 信息有类型,适合程序处理(js),较XML整洁。(无法注释) 用于移动应用云端和节点的信息通信。用在对程序接口处处理。

  YAML用缩进 : 信息无类型, 文本信息比例最高,可读性好。各类系统的配置文件,有注释易读。

  2,信息的提取方式

  1,完整解析信息的标记形式,再提取关键信息。

  2,无视标记形式,直接搜索关键信息。

  3,融合方法。

  如:提取HTML中所有的URL标签。

  思路):

  1,搜索所有的标签

  2,解析标签格式,提取href后的链接内容。

  3,find_all()方法

  最常用的查找方法

  <>.find_all(name, attrs, recursive, string, **kwargs)

  返回一个列表类型,存储查找的结果.

  使用方法:

  可单独指定name,attrs, recursive, string等

  标签名, 属性(或字典形式的键值对), 默认为对子孙节点搜索, 字符串。

  (..) 等价于 .find_all(..)

  soup(..) 等价于 soup.find_all(..)

  <>.find()搜索只返回一个结果,字符串结果。

“python爬虫怎么使用BeautifulSoup库”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: python爬虫怎么使用BeautifulSoup库

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

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

猜你喜欢
  • python爬虫怎么使用BeautifulSoup库
    本篇内容介绍了“python爬虫怎么使用BeautifulSoup库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  BeautiSoup类...
    99+
    2023-06-02
  • Python爬虫之BeautifulSoup的基本使用教程
    目录bs4的安装bs4的快速入门解析器的比较(了解即可)对象种类bs4的简单使用获取标签内容获取标签名字获取a标签的href属性值遍历文档树案例练习思路代码实现总结bs4的安装 要使...
    99+
    2024-04-02
  • Python 爬虫:如何用 BeautifulSoup 爬取网页数据
    在网络时代,数据是最宝贵的资源之一。而爬虫技术就是一种获取数据的重要手段。Python 作为一门高效、易学、易用的编程语言,自然成为了爬虫技术的首选语言之一。而 BeautifulSoup 则是 Py...
    99+
    2023-10-23
    python 爬虫 beautifulsoup
  • Python爬虫之怎么使用BeautifulSoup和Requests抓取网页数据
    这篇文章主要介绍了Python爬虫之怎么使用BeautifulSoup和Requests抓取网页数据的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python爬虫之怎么使用BeautifulSoup和Reque...
    99+
    2023-07-05
  • Python爬虫之使用BeautifulSoup和Requests抓取网页数据
    目录一、简介二、网络爬虫的基本概念三、Beautiful Soup 和 Requests 库简介四、选择一个目标网站五、使用 Requests 获取网页内容六、使用 Beautifu...
    99+
    2023-05-14
    Python爬虫 使用BeautifulSoup和Requests Python爬虫抓取网页数据
  • Python 爬虫库RoboBrowser怎么用
    这篇文章主要介绍“Python 爬虫库RoboBrowser怎么用”,在日常操作中,相信很多人在Python 爬虫库RoboBrowser怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python 爬虫...
    99+
    2023-06-13
  • Python网络爬虫requests库怎么使用
    1. 什么是网络爬虫简单来说,就是构建一个程序,以自动化的方式从网络上下载、解析和组织数据。就像我们浏览网页的时候,对于我们感兴趣的内容我们会复制粘贴到自己的笔记本中,方便下次阅读浏览&mdash;&mdash;网络爬虫帮我...
    99+
    2023-05-15
    Python Requests
  • beautifulsoup库怎么在python中使用
    今天就跟大家聊聊有关beautifulsoup库怎么在python中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 BeautifulSoup库简介BeautifulSoup库在...
    99+
    2023-06-06
  • 怎么使用Python爬虫
    本篇内容介绍了“怎么使用Python爬虫”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!导入模块import re fro...
    99+
    2023-06-16
  • python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
    前言 python爬虫系列文章的第3篇介绍了网络请求库神器 Requests ,请求把数据返回来之后就要提取目标数据,不同的网站返回的内容通常有多种不同的格式,一种是 json 格式,这类数据对开发者来说最...
    99+
    2022-06-04
    爬虫 入门教程 文本
  • Python爬取求职网requests库和BeautifulSoup库使用详解
    目录一、requests库1、requests简介2、安装requests库3、使用requests获取网页数据 我们先导入模块4、总结requests的一些方法二、Beautifu...
    99+
    2024-04-02
  • python爬虫中requests库怎么用
    小编给大家分享一下python爬虫中requests库怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!python爬虫—requests库的用法request...
    99+
    2023-06-25
  • Python爬虫中urllib库怎么用
    这篇文章给大家分享的是有关Python爬虫中urllib库怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、说明:urllib库是python内置的一个http请求库,requests库就是基于该库开发出来...
    99+
    2023-06-29
  • 爬虫笔记1:Python爬虫常用库
    请求库:1、urllib:urllib库是Python3自带的库(Python2有urllib和urllib2,到了Python3统一为urllib),这个库是爬虫里最简单的库。2、requests:requests属于第三方库,使用起来...
    99+
    2023-01-31
    爬虫 常用 笔记
  • 怎么使用python爬虫爬取数据
    本篇内容介绍了“怎么使用python爬虫爬取数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!python爬出六部曲第一步:安装reques...
    99+
    2023-06-29
  • Python爬虫Requests库如何使用
    本篇内容主要讲解“Python爬虫Requests库如何使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python爬虫Requests库如何使用”吧!1、安装 requests 库因为学习过...
    99+
    2023-07-06
  • Python爬虫包 BeautifulSoup 递归抓取实例详解
    Python爬虫包 BeautifulSoup 递归抓取实例详解 概要: 爬虫的主要目的就是为了沿着网络抓取需要的内容。它们的本质是一种递归的过程。它们首先需要获得网页的内容,然后分析页面内容并找到另一个...
    99+
    2022-06-04
    递归 爬虫 详解
  • Python中怎么利用Beautifulsoup爬取网站
    这篇文章将为大家详细讲解有关Python中怎么利用Beautifulsoup爬取网站,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.开始前准备1 python3,本篇博客内容采用pytho...
    99+
    2023-06-17
  • python爬虫之pyppeteer库简单使用
    pyppeteer 介绍Pyppeteer之前先说一下Puppeteer,Puppeteer是谷歌出品的一款基于Node.js开发的一款工具,主要是用来操纵Chrome浏览器的 AP...
    99+
    2024-04-02
  • Python爬虫Requests库的使用详情
    目录一、Requests库的7个主要的方法二、Response对象的属性三、爬取网页通用代码四、Resquests库的常见异常五、Robots协议展示六、案例展示一、Requests...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作