• 10分钟 GET 新技能 - XPath

    • 1. XPath 是什么?
    • 2. XPath 的基本规则
    • 3. Python 流行库 lxml 中使用 XPath

10分钟 GET 新技能 - XPath

1. XPath 是什么?

XPath 就是 选择 XML文件/HTML文件节点及其属性路径表达式

2. XPath 的基本规则

表达式 描述
// 从文档根节点开始搜索
/ 向下一级开始搜索
tagname 从当前节点向下的标签名称
@field 属性
text() 内容

3. Python 流行库 lxml 中使用 XPath

from lxml import etreetext = u"""
<ul><li class="blog-unit"><a href="/first">第一个</a></li><li class="blog-unit"><a href="/second">第二个</a></li>
</ul>
"""
html = etree.HTML(text)
article_hrefs = html.xpath('//li[@class="blog-unit"]/a/@href')
for article_href in article_hrefs:print(article_href)

打印结果是:

/first
/second
article_texts = html.xpath('//li[@class="blog-unit"]/a/text()')
for article_text in article_texts:print(article_text)

打印结果是:

第一个
第二个

版权声明:转载必须注明本文转自 East196 的博客:http://blog.csdn.net/east196

10分钟 GET 新技能 - XPath相关推荐

  1. 10分钟 GET 新技能 - 导言

    10分钟 GET 新技能 - 导言 1. 10分钟可以做什么? 2. 10分钟 GET 一个新技能,可能么? 3. 所以 ~~ 10分钟 GET 新技能 - 导言 1. 10分钟可以做什么? 10分钟 ...

  2. 10分钟 GET 新技能 - 正则表达式

    10分钟 GET 新技能 - 正则表达式 1. 正则表达式是什么? 2. 正则表达式的基本规则 3. Python 标准库 re 中使用 正则表达式 10分钟 GET 新技能 - 正则表达式 1. 正 ...

  3. 10分钟 GET 新技能 - 协程

    10分钟 GET 新技能 - 协程 1. 协程 是什么? 2. 协程 的基本规则 3. Python 流行库 gevent 中使用 协程 10分钟 GET 新技能 - 协程 1. 协程 是什么? 协程 ...

  4. 10分钟 GET 新技能 - JSON

    10分钟 GET 新技能 - JSON 1. JSON是什么? 2. JSON 的基本规则 3. Python 标准库 json 中使用 JSON 10分钟 GET 新技能 - JSON 1. JSO ...

  5. 10分钟 GET 新技能 - CSS选择器

    10分钟 GET 新技能 - CSS选择器 1. CSS选择器是什么? 2. CSS选择器 的基本规则 3. Python 流行库 BeautifulSoup 中使用 CSS选择器 10分钟 GET ...

  6. 10分钟 GET 新技能 - Markdown

    [TOC] 目录 一级标题 二级标题 三级标题 # 一级标题 一级标题 ## 二级标题 二级标题 ### 三级标题 三级标题 > 引用 引用 --- 横线 - 列表项 - 列表项 列表项 列表项 ...

  7. 在10分钟内在新Mac中设置Java开发环境(更新)

    这只是一个小的更新文章,它引用了2个较旧的条目( a , b ),我将它们合并为一个步骤,就像一步操作,并确保所有功能都在最新的MacOSX 10.9 Mavericks下工作 . 我主要针对的是初次 ...

  8. #今日论文推荐#1小时学会走路,10分钟学会翻身,世界模型让新生机器狗掌握多项技能

    #今日论文推荐#1小时学会走路,10分钟学会翻身,世界模型让新生机器狗掌握多项技能 人类宝宝在出生后的第1年里,就会逐渐掌握协调能力,学习坐.立.翻滚和爬行. 那么机器人呢? 机器人能完成多复杂的任务 ...

  9. 工作中必备技能---思维导图你会吗???给我10分钟让你精通思维导图!!!

    10分钟精通思维导图 问题一:同个技能,别人半小时学精,而你投入了大量金钱和时间却学不好,这公平吗? 答:当然不公平!  所以我们也要快! 问题二:真的只需要10分钟? 答:其实根本不用这么久! 问题 ...

最新文章

  1. WPF关闭应用程序,释放Window窗口资源方法
  2. WCF优化的几个常规思路
  3. gulp-rev:项目部署缓存解决方案----gulp系列(六)
  4. JAVA防盗链在报表中的应用实例
  5. nagios报错汇总
  6. vs连接oracle数据库报错,用VS连接oracle数据库时ORA-12504错误
  7. 【BZOJ】3922: Karin的弹幕
  8. pulseaudio之pacmd命令
  9. linux的tar命令压缩26g文件,如何使用Linux上的tar命令压缩和解压缩文件 | MOS86
  10. POJ2135:Farm Tour
  11. MPI 之 点对点通信的一个实例
  12. u-boot编译构成之 MLO(1)
  13. 揭密备份恢复的原理!
  14. nodejs中的事件events
  15. Heartbeat+DRBD+MySQL高可用方案
  16. 全球首个 AI 说唱歌手 TikTok 发新歌,东西方审美差异巨大
  17. Signature expired
  18. 手机归属地查询示例代码
  19. 【机器学习】深入浅出经典贝叶斯统计
  20. Yii2 中添加全局函数

热门文章

  1. node.js运用命令npm install 卡住不动,并报错(个人遇到的坑)
  2. 胖AP 和 瘦AP 的区别
  3. 基金业的数字化转型:用户是第一突破口
  4. QT5.5.1 嵌入式平台 鼠标键盘不能热插拔问题解决(一)
  5. 利用FFmpeg实现录屏、直播推流、音频视频格式转换、剪裁等功能
  6. 2018 qs计算机排名,2018QS世界大学专业排名发布
  7. 数据科学领域5个常用Python库
  8. linux中grub,nomodest,quiet等参数的含义,进入启动项之后黑屏的可能原因
  9. 16届本科毕业,从车间到互联网,转行Python工程师,年薪20W+
  10. win10更新后电脑任务栏右下角图标缺失,没有WiFi选项无法上网,诊断错误无线适配器或访问点出现问题