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.标签之间的转换

详情至BeautifulSoup概念

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的重要操作的更多相关文章

  1. BeautifulSoup

    参考:http://www.freebuf.com/news/special/96763.html 相关资料:http://www.jb51.net/article/65287.htm 1.Pytho ...

  2. Python爬虫-- BeautifulSoup库

    BeautifulSoup库 beautifulsoup就是一个非常强大的工具,爬虫利器.一个灵活又方便的网页解析库,处理高效,支持多种解析器.利用它就不用编写正则表达式也能方便的实现网页信息的抓取 ...

  3. Python 在windows上安装BeautifulSoup和request以及小案例

    Python以及PyCharm安装成功后,操作如下: 此时,代码import requests不报错了. 那么,Python 在windows上安装BeautifulSoup,怎么操作呢? 1. 打开 ...

  4. 使用XPath爬取网页数据

    我们以我的博客为例,来爬取我所有写过的博客的标题. 首先,打开我的博客页面,右键“检查”开始进行网页分析.我们选中博客标题,再次右键“检查”即可找到标题相应的位置,我们继续点击右键,选择Copy,再点 ...

  5. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

  6. [python] 网络数据采集 操作清单 BeautifulSoup、Selenium、Tesseract、CSV等

    Python网络数据采集操作清单 BeautifulSoup.Selenium.Tesseract.CSV等 Python网络数据采集操作清单 BeautifulSoup.Selenium.Tesse ...

  7. 使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解(新手必学)

    为大家介绍下Python爬虫库BeautifulSoup遍历文档树并对标签进行操作的详细方法与函数下面就是使用Python爬虫库BeautifulSoup对文档树进行遍历并对标签进行操作的实例,都是最 ...

  8. Python爬虫小白入门(三)BeautifulSoup库

    # 一.前言 *** 上一篇演示了如何使用requests模块向网站发送http请求,获取到网页的HTML数据.这篇来演示如何使用BeautifulSoup模块来从HTML文本中提取我们想要的数据. ...

  9. 【Python数据分析】Python3操作Excel(二) 一些问题的解决与优化

    继上一篇[Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 对豆瓣图书Top250进行爬取以后,鉴于还有一些问题没有解决,所以进行了进一步的交流讨论,这期间得到了一只尼玛 ...

随机推荐

  1. idea 几个常用的设置

    一.主题的背景

  2. Python 库打包分发、setup.py 编写、混合 C 扩展打包的简易指南(转载)

    转载自:http://blog.konghy.cn/2018/04/29/setup-dot-py/ Python 有非常丰富的第三方库可以使用,很多开发者会向 pypi 上提交自己的 Python ...

  3. Cesium专栏-雷达遮罩动态扫描(附源码下载)

    Cesium 是一款面向三维地球和地图的,世界级的JavaScript开源产品.它提供了基于JavaScript语言的开发包,方便用户快速搭建一款零插件的虚拟地球Web应用,并在性能,精度,渲染质量以 ...

  4. SQL数据库基础

    SQL:Structured Quety Language SQL SERVER是一个以客户/服务器(c/s)模式访问.使用Transact-SQL语言的关系型数据库管理子系统(RDBMS) DBMS ...

  5. SpringMVC使用Redis共享session

    在使用之前,请确认项目已经整合了Redis 一.加入依赖 <dependency> <groupId>org.springframework.session</group ...

  6. Linux 使用grep过滤多个条件及grep常用过滤命令

    这篇文章主要介绍了Linux 使用grep筛选多个条件及grep常用过滤命令,需要的朋友可以参考下 cat log.txt | grep 条件: cat log.txt | grep 条件一 | gr ...

  7. 致初学者:零基础如何学好,Python这门编程语言?

    前言对于很多Python这门编程语言的初学者,往往会面临以下问题: Python2和Python3我该学习哪一个?是否要安装Linux系统学习Python?Python3有各种版本我该安装哪一个?那么 ...

  8. IT兄弟连 HTML5教程 CSS3属性特效 2D变换1

    通过CSS3转换,能够对元素进行移动.缩放.转动.拉长或拉伸.它如何工作?转换是使元素改变形状.尺寸和位置的一种效果.CSS3转换包括2D转换和3D转换,本小结我们来了解2D变换的转换方法. 转换属性 ...

  9. Jmeter+Ant+Jenkins集成抛出异常java.lang.ClassNotFoundException: javax.mail.internet.MimeMessage

    一.问题描述 二.解决方法 下载javax.mail.jar插件,并将该插件放到%ANT_HOME%\lib目录下即可解决,下载地址:https://javaee.github.io/javamail ...

  10. C#使用Linq to csv读取.csv文件数据

    前言:今日遇到了一个需要读取CSV文件类型的EXCEL文档数据的问题,原本使用NPOI的解决方案直接读取文档数据,最后失败了,主要是文件的类型版本等信息不兼容导致.其他同事有使用linq to csv ...