xpath

Python爬虫——xpath的几种查询

那年仲夏 提交于 2020-02-18 03:39:37
1、直接查找一个或多个的内容 title_list = x_data.xpath("//a[@class=‘rec_topics_name’]/text()") 2、模糊查询(一群id里面前半部分一样,后半部分不一样) title_list = x_data.xpath("//a[contains(@id=‘rec_topics_name’)]/text()") 3、平级关系的下一个节点 following-sibling:* 来源: CSDN 作者: (๑• . •๑)框 链接: https://blog.csdn.net/weixin_45051787/article/details/104353719

xml简介 xpath语法解释

强颜欢笑 提交于 2020-02-17 06:17:03
一.什么是xml 1.定义:可扩展标记性语言 2.特点:xml是具有自描述特性的半结构化数据 3.作用:xml主要用来传输数据 二.xml和html区别 1、语法要求不同:xml的语法要求更严格。 (1)在html中不区分大小写,在xml中严格区分 (2)在html中,有时不严格,如果上下文清楚地显示出段落或者列表键在何处结尾,那么你可以省略 或者标记。在xml中,是严格的树状结构,绝对不能省略任何标记。 (3)在xml中,拥有单个标记二没有匹配的结束标记的元素必须用一个/字符作为结尾。 (4)在xml中,属性值必须分装在引号中。在html中,引号可用可不用。 (5)在html中属性名可以不带属性值,xml必须带 (6)xml文档中,空白部分不会被解析器自动删除,但是html是过滤掉空格的 2、标记不同 · (1)html使用固有的标记,xml没有固有标记 ·(2)html标签是预定义的,xml标签是自定义的、可扩展的。 3、作用不同 (1)html的设计宗旨是用来显示数据。 (2)xml使用来传输数据的。 三xpath(语法) —相当于一个路径一样 1.什么是xpath? xpath就是用来筛选html或者xml中元素语法 2.xml和html中的一些名字 元素 = 标签 属性 内容 3.xpath的语法 (1) 选取节点 .-- 当前节点 … --代表父节点 / -

xpath属性定位

孤街醉人 提交于 2020-02-16 19:42:00
绝对定位 element = driver.find_element_by_xpath('/html/body/div/input[@value="查询"]')[]里是属性,什么属性都可以,是对当前节点的限制条件 相对定位 element = driver.find_element_by_xpath('//div[@class="ng-scope"]/input[@value="查询"]')//代表前面那截省略了,[]里是属性 来源: https://www.cnblogs.com/mghhzAnne/p/12317991.html

xpath

谁说胖子不能爱 提交于 2020-02-15 10:45:37
什么是xml? 定义: 可扩展标记性语言(EXtensible Markup Language) 特定: xml是具有自描述特性的半结构化数据。 作用: xml主要用来传输数据 xml和html的区别 语法要求不同: xml的语法要求更严格 在html中不区分大小写,在xml中严格区分 在html中,有时不严格,如果上下文清楚地显示出段落或者列表键在何处结尾,那么你可以省略 或者 标记。在xml中,是严格的树状结构,绝对不能省略任何标记 在xml中,拥有单个标记二没有匹配的结束标记的元素必须用一个/字符作为结尾 在xml中,属性值必须分装在引号中。在html中,引号可用可不用 在html中属性名可以不带属性值,xml必须带 xml文档中,空白部分不会被解析器自动删除,但是html是过滤掉空格的 标记不同 html使用固有的标记,xml没有固有标记 html标签是预定义的,xml标签是自定义的、可扩展的 作用不同 html是用来显示数据 xml使用来传输数据的 xpath: 路径表达式 xpath: 是用来筛选html或者xml中元素语法 xml和html中一些名词 选取节点 表达式 描述 nodename 选取此节点的所有子节点 / 从根节点选取(绝对路径) // 从任意节点选取(相对路径) . 选取当前节点 . . 选取当前节点的父节点 @ 选取属性 谓语 路径表达式 结果 /

Python 与 html解析

纵然是瞬间 提交于 2020-02-15 05:47:16
Python 与 html解析 文章目录 Python 与 html解析 正则表达式 RE in Python `match()` 修饰符 `search()` `findall()` XPath & LXML XPath常用规则 导入 HTML 从字符串导入 HTML 从文件导入 HTML 获取节点 获取所有节点 获取所有指定标签 获取子节点 获取特定属性的节点 获取父节点 获取节点中的的文本 获取属性 补充 BeautifulSoup BeaufulSoup对象的初始化 节点选择器 选择标签 嵌套选择 关联选择 获取**子孙节点** 获取父节点和祖先节点 获取兄弟节点 方法选择器 `find()` `findall()` 更多 CSS选择器 提取信息 获取完整标签 获取标签类型 获取标签内容 获取属性 PyQuery 初始化 字符串初始化 URL初始化 CSS选择器 查找节点 遍历 获取信息 `attr()` 获取属性 `text()` 获取文本 节点操作 本文由 CDFMLR 原创,收录于个人主页 https://clownote.github.io ,并同时发布到 CSDN。本人不保证 CSDN 排版正确,敬请访问 clownote 以获得良好的阅读体验。 正则表达式 正则表达式是一种处理字符串的强大的工具,它有自己特定的语法结构,可以高效地实现字符串的检索、替换

廖雪峰爬虫-第一部分-day06

白昼怎懂夜的黑 提交于 2020-02-14 13:00:51
一、数据解析常用的三种方式——②Xpath 1.调用时 from lxml import etree 2.转解析类型时 xpath_data = etree . HTML ( data ) #将html文档或者xml文档转换成一个etree对象,然后调用对象中的方法查找指定的节点 3.xpath返回的数据类型是list,xpath的基本语法 #xpath 语法1.节点: / 2.跨节点: // 3.精确的标签: //a[@属性=“属性值”] 4.标签包裹的内容:text() 5.属性:@href 4.示例代码: #安装支持 解析 html 和xml的解析库 lxml #pip install lxml;xpath是一个语法,不是解析库 import requests import re from lxml import etree headers = { 'User-Agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.163 Safari/535.1' } url = 'http://news.baidu.com/' data = requests . get ( url , headers = headers ) . content

WPF学习笔记23 XMLBinding

蓝咒 提交于 2020-02-12 23:13:07
绑定到XML上 WPF数据绑定还专门支持绑定到XML数据上。可以将XmlDataProvider用作数据源,使用XPath表达式绑定元素。为了以层次结构显示,可以使用TreeView控件,通过HierarchicalDataTemplate为对应项创建视图。 下面包含Book元素的XML文件将用作下一个例子的数据源 <?xml version="1.0" encoding="utf-8" ?> <Books> <Book isbn="978-1-118-31442-5"> <Title>Professional C# 2012</Title> <Publisher>Wrox Press</Publisher> <Author>Christian Nagel</Author> <Author>Jay Glynn</Author> <Author>Morgan Skinner</Author> </Book> <Book isbn="978-0-470-50226-6"> <Title>Beginning Visual C# 2010</Title> <Publisher>Wrox Press</Publisher> <Author>Karli Watson</Author> <Author>Christian Nagel</Author> <Author>Jacob Hammer

kettle的输入组件

南楼画角 提交于 2020-02-12 13:30:42
1、kettle里面的输入,就是用来抽取数据或生成数据,是ETL操作的E。 2、CSV文件是一种带有固定格式的文本文件。注意:获取字段的时候可以调整自己的字段类型,格式,满足自己的需求哦。 3、文本文件输入,提取日志信息的数据是开发常见的操作,日志信息基本都是文本类型。 首先要获取到要抽取的文本文件哦。 可以选择自己的分隔符哦! 获取字段,如下所示: 4、微软的Excel目前有两种后缀名的文件分别为:xls和xlsx。注意:xls:2007年之前,xlsx:2007年之后。 可以选择自己的Sheet页。 获取到Excel输入的字段,可以手动调整字段类型。 5、多文件合并,数据往往也是以多个文件的形式出现,有的数据还会分散在多个子文件夹。所以合并数据也是开发中非常常见的操作。 6、XML 指可扩展标记语言(EXtensible Markup Language), XML 被设计用来传输和存储数据。   XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。   XPath-语法,选取节点 XPath 使用路径表达式在 XML 文档中选取节点。节点是通过沿着路径或者 step 来选取的。下面列出了最有用的路径表达式:    XPath,路径表达式,示例,如下所示

xpath--string(.)用法

本秂侑毒 提交于 2020-02-11 23:46:08
from lxml import etree html = ''' <li class="tag_1">需要的内容1 <a>需要的内容2</a> </li> ''' selector = etree.HTML(html) contents = selector.xpath('//li[@class = "tag_1"]') contents1 = selector.xpath('//li[@class = "tag_1"]')[0] contents2 = contents1.xpath('string(.)') contents3 = selector.xpath('//li[@class = "tag_1"]/text()') print(contents) # [<Element li at 0x2c55e88>] print(contents1) # <Element li at 0x2c55e88> print(contents2) print(contents3)   输出结果 对于contents3的输出中带有'\n',逗号等字符,我们可以用replace替换成我们想要的字符或空格,具体用法参考 https://www.runoob.com/python/att-string-replace.html 来源: https://www.cnblogs.com