BeautifulSoup的重要操作
BeautifulSoup相关概念总结:https://www.cnblogs.com/pythonywy/p/11134481.html
css基础以及选择器基础:https://www.cnblogs.com/pythonywy/p/11266221.html
css选择器进阶:https://www.cnblogs.com/pythonywy/p/11276513.html
一.BeautifulSoup的重要操作
解析页面
- 最常用rp_lxml= BeautifulSoup(response.text,'lxml')其他可以转至概念
提取元素
主要有4大元素
- Tag: HTML 中的一个个标签
- NavigableString:可以遍历的字符串
- BeautifulSoup:BeautifulSoup 对象表示的是一个文档的全部内容.大部分时候,可以把它当作 Tag 对象,是一个特殊的 Tag
- Comment:Comment 对象是一个特殊类型的 NavigableString 对象,其实输出的内容仍然不包括注释符号。
元素操作
二.Tap对象相关操作
1.对于tap的选取
1.find
使用re_lxml.find('css选择器')
重点只选择第一个出现的
2.select
使用re_lxml.select('css选择器')
重点会把满足CSS选择器所有内容都显示出来,输出为列表的形式
3.直接操作
使用re_lxml.标签名.标签名而不是用css选择器
重点只选择第一个出现的
4.find_all
会把满足CSS选择器所有内容都显示出来,输出为列表的形式
但是有几个优点
使用多个指定名字的参数可以同时过滤tag的多个属性
rp_lxml.find_all('属性1','属性2')要某个标签中其中某个属性
rp_lxml.find_all('标签名',class_='属性')定义一个字典参数来搜索包含特殊属性的tag
rp_lxml.find_all(attrs={'属性名':'属性值'})
2.对于tap的操作
1.标签之间的转换
2.选取的元素相关操作
tap.text:内容的文本
tap.name:标签名字
tap.attrs:标签的属性
tap..标签p.attrs:标签内标签p的属性
tap.['属性名']:标签的指定属性对应的内容
tap.标签p.['属性名']:标签内标签p的指定属性属性
tap.get('属性名'):标签的指定属性对应的内容
tap.标签p.get('属性名'):标签内标签p的指定属性属性
三.NavigableString对象相关操作
NavigableString.string即可获取标签内部的文字
四.BeautifulSoup对象相关操作
他是一种特殊的Tap所有tap可以的操作他都可以
rp_lxml.attrs为{}
rp_lxml.name为[document]
剩下的可以去尝试不过个人感觉没啥意义
五.Comment对象相关操作
我觉得吧一个可以用用就是判断他是不是这个数据类型
print(type(未知对象.string))看他是不是comment对象
BeautifulSoup的重要操作的更多相关文章
- BeautifulSoup
参考:http://www.freebuf.com/news/special/96763.html 相关资料:http://www.jb51.net/article/65287.htm 1.Pytho ...
- Python爬虫-- BeautifulSoup库
BeautifulSoup库 beautifulsoup就是一个非常强大的工具,爬虫利器.一个灵活又方便的网页解析库,处理高效,支持多种解析器.利用它就不用编写正则表达式也能方便的实现网页信息的抓取 ...
- Python 在windows上安装BeautifulSoup和request以及小案例
Python以及PyCharm安装成功后,操作如下: 此时,代码import requests不报错了. 那么,Python 在windows上安装BeautifulSoup,怎么操作呢? 1. 打开 ...
- 使用XPath爬取网页数据
我们以我的博客为例,来爬取我所有写过的博客的标题. 首先,打开我的博客页面,右键“检查”开始进行网页分析.我们选中博客标题,再次右键“检查”即可找到标题相应的位置,我们继续点击右键,选择Copy,再点 ...
- python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。
本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...
- [python] 网络数据采集 操作清单 BeautifulSoup、Selenium、Tesseract、CSV等
Python网络数据采集操作清单 BeautifulSoup.Selenium.Tesseract.CSV等 Python网络数据采集操作清单 BeautifulSoup.Selenium.Tesse ...
- 使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解(新手必学)
为大家介绍下Python爬虫库BeautifulSoup遍历文档树并对标签进行操作的详细方法与函数下面就是使用Python爬虫库BeautifulSoup对文档树进行遍历并对标签进行操作的实例,都是最 ...
- Python爬虫小白入门(三)BeautifulSoup库
# 一.前言 *** 上一篇演示了如何使用requests模块向网站发送http请求,获取到网页的HTML数据.这篇来演示如何使用BeautifulSoup模块来从HTML文本中提取我们想要的数据. ...
- 【Python数据分析】Python3操作Excel(二) 一些问题的解决与优化
继上一篇[Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 对豆瓣图书Top250进行爬取以后,鉴于还有一些问题没有解决,所以进行了进一步的交流讨论,这期间得到了一只尼玛 ...
随机推荐
- [译]C# 7系列,Part 5: private protected 访问修饰符
原文:https://blogs.msdn.microsoft.com/mazhou/2017/10/05/c-7-series-part-5-private-protected/ C#有几个可访问性 ...
- 如何正确使用 Spring Cloud?【中】
3. Spring 集成了哪些常用组件? 从 2004 年发布 1.0 版本开始,Spring 目前已经演进至 5.x 版本了,为不同时期的应用开发提供了强有力的支撑.现在我们正面对微服务.DevOp ...
- 搭建zabbix 4.0
[root@localhost /]# sed ‐i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config #永 ...
- 搭建Android开发环境 以及 ionic 编译安卓app步骤
1. 下载安装JDK 下载地址: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htm ...
- 如何向小姐姐解释SQL和NoSQL之间的区别
最近,在Medium上出现了一个采访问题:如何向奶奶解释SQL和NoSQL之间的区别.我认为作者使用自己的结构化家谱来比较sql和nosql之间的差异.写作非常好,但是有点尴尬.面试官没有时间听你的话 ...
- Paper | MFQE 2.0: A New Approach for Multi-frame Quality Enhancement on Compressed Video
目录 1. 要点 2. 压缩视频特性分析 2.1 质量波动 2.2 帧间相关性 3. 方法 3.1 分类器 3.2 好帧运动补偿 3.3 质量增强网络 4. 实验 4.1 差帧质量提升效果 4.2 总 ...
- Windows Redis 安装(带视频)
疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 架构师成长+面试必备之 高并发基础书籍 [Netty Zookeeper Redis 高并发实战 ] 疯狂创客圈 高并 ...
- Java8新特性之接口defualt,static方法
简介 作用 Java8中接口引入了defualt,static两种方法提供默认实现,彻底打破了接口不能有默认实现的规定 static 让接口类似于工具类,提供一些静态方法 static方法不会被子类继 ...
- 记录开发基于百度地图API实现在地图上绘制轨迹并拾取轨迹对应经纬度的工具说明
前言: 最近一直在做数据可视化方面的工作,其中平面可视化没什么难度,毕竟已经有很多成熟的可供使用的框架,比如百度的echart.js,highcharts.js等.还有就是3D可视化了,整体来说难度也 ...
- 精通awk系列(12):awk getline用法详解
回到: Linux系列文章 Shell系列文章 Awk系列文章 getline用法详解 除了可以从标准输入或非选项型参数所指定的文件中读取数据,还可以使用getline从其它各种渠道获取需要处理的数据 ...