Bs4 BeautifulSoup取值

原文网址:https://blog.csdn.net/u010244522/article/details/79627073

从网页获取HTML数据后,获取对应标签、属性的值

取值方法主要有以下几种:

1.通过标签名(tag)获取: tag.name        tag对应的type是<class ‘bs4.element.Tag‘>

2.通过属性(attrs)获取:tag.attrs

通过标签属性获取:    tag["class"]  或     tag.get("class")

获取对应的内容

1.    tag.string    获取当前标签的内容

2.    tag.get_text()    获取标签内所有的字符串

查找相应的内容

1.find_all(class_="class")    返回的是多个标签,格式为<class ‘bs4.element.ResultSet‘>

2.find(class_="class")    返回一个标签,格式是<class ‘bs4.element.Tag‘>

3.select_one()    返回一个标签,格式是<class ‘bs4.element.Tag‘>

4.select()    返回的是多个标签,格式为<class ‘bs4.element.ResultSet‘>

1和4是返回组标签(就算只有一个标签也是一组)

取值时需要先定位,定位是list(ResultSet)中的那个标签在取值

tag[0].string

使用    find_all()    不带条件查找,tag[0]["class"].string

原文地址:https://www.cnblogs.com/moying-wq/p/10050720.html

时间: 2024-10-10 12:38:30

Bs4 BeautifulSoup取值的相关文章

python bs4 BeautifulSoup

Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.bs4 模块的 BeautifulSoup 配合requests库可以写简单的爬虫. 安装 命令:pip install beautifulsoup4 解析器 主要的解析器,以及它们的优缺点如下: 安装命令: pip install lxml pip install html5lib requests requests的底层实现就是urllib, requests能够自动帮助我们解压(gzip压缩的等)网页

使用request+bs4爬取所有股票信息

爬取前戏 我们要知道利用selenium是非常无敌的,自我认为什么反爬不反爬都不在话下,但是今天我们为什么要用request+bs4爬取所有股票信息呢?因为他比较原始,因此今天的数据,爬取起来也是比较繁琐的!接下来让我们emmmm....你懂得 爬取步骤 第一步:获取股票代码 1)我们通过这个链接去网易看一下具体的股票信息,下面这个网页是乐视网的股票信息http://quotes.money.163.com/trade/lsjysj_300104.html#01b07 2)上海证券交易所的官方网

mysql中bigint、int、mediumint、smallint 和 tinyint的取值范

mysql数据库设计,其中,对于数据性能优化,字段类型考虑很重要,搜集了些资料,整理分享出来,这篇为有关mysql整型bigint.int.mediumint.smallint 和 tinyint的语法介绍,如下:1.bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字),无符号的范围是0到 18446744073709551615.一位为 8 个字节. 2.int 一个正常大小整数.有符号

关于offsetLeft的取值

ele.offsetLeft的取值,如果ele是body的直接子元素,那么ele.offset的取值就是ele距离body左侧的距离. 但是如果ele不是body的直接子元素,中间还有其他元素,而且中间元素存在margin边距值,在相对高级的浏览器和ie6\7之间,ele.offsetLeft就会产生不同的取值. 只要ele的父元素使用了定位,不论是相对定位还是绝对定位.那么各个浏览器的ele.offsetLeft取值就会全部相同,都是现对于这个父元素左边距. 但这仅仅是对ele的父元素使用定位

php floor 取值问题

事情是这样的,在公司有客户反应会少一个进个一位数字,大概类似百度百科这样 <?php $str=41.23*5000; echo  floor($str); echo  "<br>"; echo intval($str); ?> 应该得到206150,为什么他是得到206149呢 解决办法: 可以用strval转一下 原因: 这是计算机内部问题 浮点数的计算永远都不会完全准确 例如 1/3 表示 0.333333...............后面N个3,但是计算

使用Struts框架的Java Web项目中的两个Session的区别和常见的Session取值为空的错误

我的百度知道回答,感觉这个知识很有意义,专门贴出来. 不过还有待验证的地方,就是 ActionContext.getContext().getSession("name", "Tom"); //如果在JSP中通过 EL 或者 Struts2 标签怎么显示? 以下是回答正文. 很多初学Java Web的同学因为使用 Strut2框架而分不清两个 Session的区别. 1.   JSP/Servlety有个原生的 session 对象,这是9大内置对象中的一个,书上写

js 定义像java一样的map方便取值

js 定义像java一样的map方便取值. 百度有位大神说"js对象本身就是一种Map结构",这真是一段让人欢天喜地的代码. <script> //定义一个全局map var map = {}; var key0 = '0'; var key1 = '1'; map[key0] = '0-真实报文'; map[key1] = '1-虚拟报文'; //row 获取这行的值 ,index 获取索引值 function testJsMap(key){ //如果遍历map for(

17 Java语言基础long与float的取值范围谁大谁小

结论 float的取值范围比long大 验证 1 public class Test1_DataTypeConversion { 2 3 public static void main(String[] args) { 4 5 float f = 1.3f; 6 long l = 34; 7 // l = f; 8 // System.out.println(l); 9 //Type mismatch: cannot convert from float to long 10 f = l; 11

添加Properties取值和枚举取值

<!--配置文件--><property name="ppp"> <props> <prop key="11">hello</prop> <prop key="22">bye</prop> </props> </property> </bean> 取值App1类代码: System.out.println("****通