当前位置:网站首页>数据解析之bs4学习
数据解析之bs4学习
2022-08-09 08:06:00 【星星本来就很美】
bs4 数据解析
- 原理:
1.标签定位
2.提取标签、标签属性中存储的数据值
bs4使用:
- 实例化一个BeautifulSoup对象,并且将源码数据加载到该对象中
- 通过调用BeautifulSoup对象中相关的属性或者方法进行标签定位和数据提取
实例化BeautifulSoup对象:
- from bs4 import BeautifulSoup
-对象的实例化:
1.将本地的html文档中的数据加载到该对象中
fp = open('./test.html','r',encoding='utf-8')
BeautifulSoup(fp,'lxml')
2.将互联网上获取的页面源码加载到该对象中
page_text = response.text
soup = BeautifulSoup(page_text,'html')
- 提供的用于数据解析的方法和属性:
soup.tagName:返回的是文档中第一次出现的tagName对应的标签
soup.find():
- find('tagName'):等同于soup.div
属性定位:
- soup.find('div',class_/id/attr='song' )
-soup.find_all('tagName'):返回符合要求的所有标签(列表)
select:
select('某种选择器(id,class,标签.. .选择器)'),返回的是一个列表。
层级选择器:
soup.select('.tang > ul > li > a'): > 表示的是一个层级
soup.select('.tang > ul a'): 空格表示的多个层级
获取标签之间的文本数据:
- soup.a.text/string/get_text()
- text/get_text(): 可以获取某一个标签中所有的文本内容
- string: 只可以获取该标签下面直系的文本内容
获取标签中属性值:
- soup.a['href']
边栏推荐
- 泛型和lambda表达式
- ncnn 推理猫狗识别
- Redis redis 】 【 the expiration of listening
- 可能导致Loadrunner检查点中savecount为0的分析
- 包子凑数----欧几里得+dp
- 黑马2022最新redis课程笔记知识点(面试用)
- 如何生成dll文件 采用VS2017生成dll文件(动态库文件)和lib文件(静态库文件)以C语言为例
- Operator Overloading in Inheritance: A Legend of Input and Output
- 收藏!Solidworks从设计到制造流程解决方案 2022来了!
- get一个小技巧,教你如何在typora写文章上传图片到博客上
猜你喜欢
随机推荐
测试和开发之间的恩恩怨怨
Servlet的实现原理解析(serverapplet)(服务端程序)
VMware virtual machine cannot be connected to the Internet after forced shutdown
研发分享:机器学习卡片的使用
LAN技术-6MSTP
Buns make up the number----Euclide+dp
交换机基本原理与配置
HOOPS助力 SolidWorks edrawings 引入AR/VR技术
9.进程和计划任务管理(1)
测试流程
继承中的运算符重载:输入输出的传奇
Cookie和Session详解
Talking about Flask_script
不同风格的Flask-restful
web基本概念
3D精彩案例,清软英泰建成综合轻量化显示平台!
IO byte stream reads text Chinese garbled
eTS UI development learning
Shell之函数与数组
Account and Permission Management