以下代码将url中css样式为class:green的数据解析出来,并使用get_text()剔除标签结构;一般来说使用BeautifulSoup时需要CSS的标签结构,所以只需要在最后保存或者打印数据时调用get_text()

from urllib.request import urlopen
from urllib.error import HTTPError
from bs4 import BeautifulSoup
# 解析CSS
def spanCSS():url = "http://www.pythonscraping.com/pages/warandpeace.html"try:    html = urlopen(url)except HTTPError as e:  print(e)try:bsObj = BeautifulSoup(html, features="html5lib")nameList = bsObj.findAll("span", {"class": "green"})except AttributeError as e: print(e)for name in nameList:# 最后打印数据时,可以把标签结构删除print(name.get_text())

调用库BeautifulSoup时,这两个函数将经常被用到(主要是前两个参数tag和attributes):

find 其实等价于 findAll 的 limit 等于1 时的情形

findAll(tag, attributes, recursive, text, limit, keywords)
find(tag, attributes, recursive, text, keywords)

tag:标签名;attribute:属性;recursive:支持递归查找;text:使用文本匹配;

例如:

html.findAll("span", {"class":{"green", "red"}})

这行代码将会找出html文档中绿色和红色两种颜色的span标签<span class="green">Hello world!</span>

让标签的选择更具体:

bsObj.find("table",{"id":"giftList"}).tr
bsObj.table.tr

使用第一行代码而不是第二行,因为这样可以避免各种意外。页面布局总是不断变化的,一个标签这次是在表格中第一行的位置,
没准儿哪天就在第二行或第三行了。 如果想让你的爬虫更稳定,最好还是让标签的选择更加具体如果有属性,就利用标签的属性。

菜鸡解析CSS(cascading style sheet)相关推荐

  1. CSS cascading style sheet

    html+css+javascript 结构+表现+交互 css怎么用(快速入门) css选择器(重点,难点) 美化网页(文字,阴影,超链接,列表,渐变) 盒子模型 浮动 定位 网页动画(特效)非重点 ...

  2. CSS(Cascading Style Sheet)总结

    CSS 层叠样式表 (Cascading Style Sheet) 1.字体设置: 有继承性,给父元素设置,子元素可继承. (1)字体倾斜:font-style:normal/italic (2)字体 ...

  3. 什么是CSS,有什么作用?\nCSS(Cascading Style Sheet):层叠样式表语言。\nCSS的作用是:\n修饰HTM

    什么是CSS,有什么作用?\nCSS(Cascading Style Sheet):层叠样式表语言.\nCSS的作用是:\n修饰HTML页面,修饰HTML页面张的某些元素的样式,让HTML页面更好看. ...

  4. CSS(Cascading Style Sheet)

    文章目录 CSS(Cascading Style Sheet) 使用方式 基本语法 颜色写法 选择器*** 标签选择器 id选择器 类选择器 选择器分组 层次选择器 伪类 pseudo-classes ...

  5. css sheet2.0,详解CSS3.0(Cascading Style Sheet) 层叠级联样式表

    CSS3.0(Cascading Style Sheet) 层叠级联样式表 快速入门: CSS01 h1 { color: red; } 标题一 CSS的三种导入方式: 行内样式(优先级最高,但不建议 ...

  6. CSS3(Cascading Style Sheet) 层叠样式表

    CSS是Cascading Style Sheet 层叠样式表或级联样式表,简称"样式表".利用样式可以定义页面的样式,大大减少网页的设计工作量.也可以美化页面,精准定制页面的布局 ...

  7. CSS (Cascading Style Sheets)

    CSS 是什么 层叠样式表 (Cascading Style Sheets). CSS 能够对网页中元素位置的排版进行像素级精确控制 , 实现美化页面的效果 . 能够做到页面的样式和结构分离. 基本语 ...

  8. CSS(层叠样式表cascading style sheet)——CSS样式、基础选择器

    一.CSS作用 对页面的外观进行美化 统一网站页面的风格 实现内容和样式的分离,适合团队开发 二.CSS语法规范 三.CSS引入方式   CSS的3种样式表 书写位置的不同分为:行内样式表(行内式) ...

  9. CSS(Cascading Style Sheets) 层叠样式表

    CSS通常称为CSS样式表或层叠样式表(级联样式表),主要用于设置HTML页面中的文本内容(字体.大小.对齐方式等).图片的外形(宽高.边框样式.边距等)以及版面的布局等外观显示样式. CSS以HTM ...

  10. CSS( Cascading Style Sheets )简书

    (注:带*号的属性是CSS3新增属性) 一.基本规则 1.css通常存储在样式表(style)中,用于定义如何显示HTML元素: 2.css主要由两个部分构成:选择器和一条或多条声明. 选择器通常是需 ...

最新文章

  1. TCP/IP和OSI4层、7层协议介绍
  2. Leaflet中使用leaflet-search插件实现搜索定位效果
  3. 数据结构与算法 / 排序算法 / 堆排序
  4. SAP ADBC和JDBC的对比
  5. onvif概念及应用?
  6. Deep learning:十(PCA和whitening)
  7. main函数的类型定义
  8. 带你揭开IP地址的神秘身份
  9. python中lstrip函数_python中strip(),lstrip(),rstrip()函数的使用讲解
  10. 数据--第26课 - 排序的概念及分类
  11. JPBC库的使用--双线性配对,ECC加密
  12. Zabbix错误:zbx_mem_malloc(): out of memory的解决方法
  13. 【APP推荐】手机制作微电影
  14. 2019年新版新媒体运营学习路线,附完整视频+工具+运营经验
  15. 干货!CDN内容分发网络实战技巧
  16. 阿里云应用身份服务IDaaS新升级,云原生、高安全,极致用户体验
  17. 计算机专业背景的大学,不要求专业背景的计算机专业!
  18. TDChat国内ChatGPT镜像网站最新网站入口地址
  19. Simple Operations on Sequence
  20. linux查看磁盘使用情况命令

热门文章

  1. 【计算机视觉】Lecture 28:跟踪简介
  2. 南京南汽技工学校计算机专业是啥,计算机中心附近技术类学校
  3. 【机器学习基础】无监督学习(1)——PCA
  4. HDU1814 求2-sat字典序最小的解
  5. latex写加上标题不显示页眉页脚
  6. Node.js实战(Node.js in Action)书中的代码实现
  7. 高绩效团队-VUCA时代的五个管理策略《三》—创新管理
  8. 氢键H-H的博客目录
  9. 黑客白皮书:如何成为一名黑客(附FAQ)
  10. 艾永亮:酒瓶中的战争,谁是下一瓶被拿起的葡萄酒