Python爬虫教程-21-xpath

本篇简单介绍 xpath 在python爬虫方面的使用,想要具体学习 xpath 可以到 w3school 查看 xpath 文档

Python爬虫教程-21-xpath

什么是 XPath?

  • XPath 使用路径表达式在 XML 文档中进行导航
  • XPath 包含一个标准函数库
  • XPath 是 XSLT 中的主要元素
  • XPath 是一个 W3C 标准
  • 用途:它是一种用来确定XML文档中某部分位置的语言
  • XPath开发工具: 
    • 开源的XPath表达式工具:XMLQuire
    • Chrome 插件:XPath Helper
    • FIrefox插件:XPath CHecker
  • XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。起初XPath的提出的初衷是将其作为一个通用的、介于XPointer与XSL间的语法模型。但是XPath很快的被开发者采用来当作小型查询语言
  • 在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档节点(或称为根节点

xml案例py24.xml文件:https://xpwi.github.io/py/py%E7%88%AC%E8%99%AB/py24.xml

<?xml version="1.0" encoding="UTF-8" ?>

<booksore>
    <book category="cooking">
        <title lang="en">Everyday Italian</title>
        <auther>Gidada De</auther>
        <year>2018</year>
        <price>23</price>
    </book>

    <book category="education">
        <title lang="en"www.tianjiuyule178.com>Python is Python</title>
        <auther>Food www.huayiyul.com/ www.thq666.com/ War</auther>
        <year>2008</year>
        <price>83</price>
    </book>

    <book category="sport">
        <title lang=www.yigou521.com/ "en">Running</title>
        <auther>Klaus www.trgj888.com Kuka<www.yongshiyule178.com /auther>
        <year>2010</year>
        <price>43</price>
    </book>

</booksore>

XPath 路径表达式

  • XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。
  • 常用路径表达式: 
  • 实例: 

谓语(Predicates)

  • 谓语用来查找某个特定的节点或者包含某个指定的值的节点
  • 谓语被嵌在方括号中
  • 实例:

    在下面的表格中,我们列出了带有谓语的一些路径表达式,以及表达式的结果: 

选取未知节点

  • XPath 通配符可用来选取未知的 XML 元素 
  • 实例: 

选取若干路径

  • 通过在路径表达式中使用“|”运算符,您可以选取若干个路径
  • 实例: 

更多文章链接:Python 爬虫随笔

原文地址:https://www.cnblogs.com/qwangxiao/p/9652275.html

时间: 2024-10-18 02:43:00

Python爬虫教程-21-xpath的相关文章

python爬虫教程:《利用Python爬取表情包》

python爬虫教程:<利用Python爬取表情包>,微信没有表情包?不用愁!老师带领你使用多线程爬虫一键爬取20w的表情包~ python爬虫教程:<利用Python爬取表情包>,微信没有表情包?不用愁!老师带领你使用多线程爬虫一键爬取20w的表情包~ python爬虫教程:<利用Python爬取表情包>,微信没有表情包?不用愁!老师带领你使用多线程爬虫一键爬取20w的表情包~ python爬虫教程:<利用Python爬取表情包>,微信没有表情包?不用愁!

Python爬虫教程-09-error 模块

Python爬虫教程-09-error模块 今天的主角是error,爬取的时候,很容易出现错,所以我们要在代码里做一些,常见错误的处,关于urllib.error URLError URLError 产生的原因: 1.无网络连接 2.服务器连接失败 3.找不到指定的服务器 4.URLError是OSError的子类 案例v9文件:https://xpwi.github.io/py/py%E7%88%AC%E8%99%AB/py09error.py # 案例v9 # URLError的使用 fro

Python爬虫教程-08-post介绍(百度翻译)(下)

Python爬虫教程-08-post介绍(下) 为了更多的设置请求信息,单纯的通过urlopen已经不太能满足需求,此时需要使用request.Request类 构造Request 实例 req = request.Request(url=baseurl,data=data,headers=header) 发出请求 rsp = request.urlopen(req) 文件: 案例v8文件:https://xpwi.github.io/py/py%E7%88%AC%E8%99%AB/py08po

Python爬虫教程-25-数据提取-BeautifulSoup4(三)

Python爬虫教程-25-数据提取-BeautifulSoup4(三) 本篇介绍 BeautifulSoup 中的 css 选择器 css 选择器 使用 soup.select 返回一个列表 通过标签名称:soup.select("title") 通过类名:soup.select(".centent") id 查找:soup.select("#name_id") 组合查找:soup.select("div #input_content

Python爬虫教程-27-Selenium Chrome版本与chromedriver兼容版本对照表

我们使用Selenium+Chrome时,版本不一样, 会导致 chromedriver 停止运行 chromedriver 所有版本下载链接:http://npm.taobao.org/mirrors/chromedriver/ 请根据下面表格下载支持自己 Chrome 的版本 Selenium Chrome版本与chromedriver兼容版本对照表 ChromeDriver 版本 支持的 Chrome 版本 ChromeDriver v2.41 (2018-07-27) Supports

Python爬虫教程-24-数据提取-BeautifulSoup4(二)

Python爬虫教程-24-数据提取-BeautifulSoup4(二) 本篇介绍 bs 如何遍历一个文档对象 遍历文档对象 contents:tag 的子节点以列表的方式输出 children:子节点以迭代器形式返回 descendants:所有子孙节点 string:用string打印出标签的具体内容,不带有标签,只有内容 案例代码27bs3.py文件:https://xpwi.github.io/py/py%E7%88%AC%E8%99%AB/py27bs3.py # BeautifulS

Python爬虫教程-26-Selenium + PhantomJS

Python爬虫教程-26-Selenium + PhantomJS 动态前端页面 : JavaScript: JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能 jQuery: jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的Jav

Python爬虫教程-31-创建 Scrapy 爬虫框架项目

本篇是介绍在 Anaconda 环境下,创建 Scrapy 爬虫框架项目的步骤,且介绍比较详细 Python爬虫教程-31-创建 Scrapy 爬虫框架项目 首先说一下,本篇是在 Anaconda 环境下,所以如果没有安装 Anaconda 请先到官网下载安装 Anaconda 下载地址:https://www.anaconda.com/download/ Scrapy 爬虫框架项目的创建 0.打开[cmd] 1.进入你要使用的 Anaconda 环境 1.环境名可以在[Pycharm]的[Se

Python爬虫教程-32-Scrapy 爬虫框架项目 Settings.py 介绍

本篇介绍项目开发的过程中,对 Setting 文件的配置和使用 Python爬虫教程-32-Scrapy 爬虫框架项目 Settings.py 介绍 settings.py 文件的使用 想要详细查看 settings.py文件的更多内容,可查看中文文档: https://scrapy-chs.readthedocs.io/zh_CN/latest/topics/settings.html Settings 中配置 USER_AGENTS 在 settings.py 文件中很多东西默认是给注释掉的