beautifulsoup获取属性_Python爬虫常用模块:BeautifulSoup
BeautifulSoup用途 BeautifulSoup 借助网页的结构和属性等特性来解析网页,可以用它来方便地从网页中提取所需信息。
BeautifulSoup自动将输入文档转换为Unicode编码,输出文档转换为UTF-8编码。BeautifulSoup依赖于解析器
它除了支持Python标准库中的HTML解析器外,还支持第三方解析器:
用法示例
在以下示例中,使用的均是 Python 标准库中的HTML解析器,使用方法为 BeautifulSoup(markup, 'html.parser')
① prettify() 方法
使用 prettify() 方法把网页信息(字符串)以标准的缩进格式输出,输出的结果中很多节点,每一个节点都可以作为一个对象,直接调用节点的名称就可以提取节点元素。
② 输出指定节点的文本内容
在使用 prettify() 方法输出的结果中,可以看到有 title 节点:
使用 soup.title 可以提取出 title 节点,输出结果为:<title>猫眼电影 - 一网打尽好电影</title> 。
查看一下 soup.title 的类型,为 bs4.element.Tag类型,这是 BeautifulSoup 中一个重要的数据结构,我们通过节点提取的结果都是这种 Tag 类型。Tag 具有一些属性,例如 string 属性。
调用 string 属性就可以得到这个节点内的文本内容了:
注意:以上这种提取节点元素的方式,当同一节点名出现多次时,只能提取到第一个匹配的节点。③ 获取 Tag (标签)的属性
使用 soup.标签名.attrs 可以获取指定标签的所有属性。例如:
使用 soup.标签名['属性名'] 可以获取标签中指定属性的内容。例如:
④ find() 和 find_all() 方法——面向对象的匹配
BeautifulSoup 提供了一些查询方法,比如 find() 和find_all() 等,调用它们,然后传入相应的参数,就可以灵活查询了。find()
使用 find() 方法,可以得到符合条件的第一个元素。例如,使用 soup.find(name='p') 可以得到节点名为 p 的第一个元素:
find_all()
使用 find_all() 方法,可以得到所有符合条件的元素。例如,使用 soup.find(name='p') 可以得到节点名为 p 的所有元素组成的列表:
find() 和 find_all() 方法 常与 正则表达式 配合使用。
挖个坑,以后填:
什么是正则表达式?如何使用?
------------------- End -------------------
相关阅读
Python抓取静态网页内容mp.weixin.qq.comPython爬虫常用模块:requests库的7个主要方法、13个关键字参数以及响应对象的5种属性mp.weixin.qq.com
beautifulsoup获取属性_Python爬虫常用模块:BeautifulSoup相关推荐
- 数据采集与清洗基础习题(二)Python爬虫常用模块,头歌参考答案
数据采集习题参考答案,会持续更新,点个关注防丢失.为了方便查找,已按照头歌重新排版,朋友们按照头歌所属门类查找实训哦,该篇为Python爬虫常用模块. 创作不易,一键三连给博主一个支持呗. 文章目录 ...
- python tag对象下有多个标签、属性_Python爬虫库BeautifulSoup获取对象(标签)名,属性,内容,注释...
Apple iPhone 11 (A2223) 128GB 黑色 移动联通电信4G手机 双卡双待 4999元包邮 去购买 > 如何利用Python爬虫库BeautifulSoup获取对象(标签) ...
- python怎么爬取电影海报_python爬虫之通过BeautifulSoup获取豆瓣最新上映电影的海报...
0.目录 1.分析页面 2.初步代码 3.完整代码 4.总结 5.补充 1.分析页面 上一次我们讲了xpath获取豆瓣最新上映电影的海报,这一次会分析如何使用BeautifulSoup获取.启程:py ...
- python如何修改网页_python爬虫:使用BeautifulSoup修改网页内容
BeautifulSoup除了可以查找和定位网页内容,还可以修改网页.修改意味着可以增加或删除标签,改变标签名字,变更标签属性,改变文本内容等等. 使用修BeautifulSoup修改标签 每一个标签 ...
- 与python相关的爬虫工具_python爬虫常用工具集合
一.常用模块 1.requests模块,网络请求 Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库,Requests它会比url ...
- python中common在哪个模块导入_python的常用模块之collections模块详解
认识模块 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的 ...
- python beautifulsoup库_Python爬虫系列:BeautifulSoup库详解
点击上方蓝字关注"程序员Bob"呀~ 每个人的生命都是通向自我的征途,是对一条道路的尝试,是一条小径的悄然召唤.人们从来都无法以绝对的自我之相存在,每一个人都在努力变成绝对自我,有 ...
- Python正则匹配HTML,python正则匹配html标签_Python爬虫常用正则表达式及HTML网页标签分析总结...
这篇文章主要是介绍Python爬取网页信息时,经常使用的正则表达式及方法.它是一篇总结性文章,实用性比较大,主要解决自己遇到的爬虫问题,也希望对你有所帮助~ 当然如果会Selenium基于自动化测试爬 ...
- python正则匹配html标签_Python爬虫常用正则表达式及HTML网页标签分析总结
这篇文章主要是介绍Python爬取网页信息时,经常使用的正则表达式及方法.它是一篇总结性文章,实用性比较大,主要解决自己遇到的爬虫问题,也希望对你有所帮助~ 当然如果会Selenium基于自动化测试爬 ...
最新文章
- win2003服务器记录文件夹,在Windows Server 2003里快速查找文件
- IDA使用方法-----1
- 【面试必备】java面试题视频讲解
- [Objective-c 基础 - 2.5] .h和.m文件,点语法,成员变量作用域
- 【コンテンツ配信高速化 】
- Redis介绍及常用命令【转载】
- 9款很棒的网页绘制图表JavaScript框架脚本
- 「leetcode」35.搜索插入位置:每次遇到二分法,都是一看就会,一写就废
- [Node.js]001.安装与环境配置
- 华为鸿蒙如何添加桌面小组件,万能小组件添加至桌面怎么弄?桌面添加应用方法图文详解...
- 如何应用计算机键盘截图,键盘怎么截图
- 美丽的小丑,谁的悲哀
- 微型计算机可以配置,目前主流微型计算机的配置及选购的调查报告
- 洛谷 P2216 [HAOI2007] 理想的正方形
- 全球最大同性交友平台的“黑历史”
- 校园快递管理系统-JAVA.JSP【数据库设计、论文、源码、开题报告】
- Github开源项目详解--Mall(一)
- 单级放大器1db压缩点 matlab仿真,0.1db压缩点
- 手把手教你电机FOC控制【一】
- PhysX 物理引擎研究(一)源码编译