
xpath
执笔写回憶
人生苦短,才学Python!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
xpath获取标签和子标签下的文字内容
from lxml import etreehtml = """ <ol> <li class="">直接选取<code>ul</code>的第二个<code>children</code></li> </ol>"""data = etree.HTML(html)result = data.xpath('string(//ol/li)')print(result) .原创 2022-02-07 15:17:23 · 1952 阅读 · 0 评论 -
爬取不规范html网页文本时,用html5lib解析不规范的html文本
安装解析器:pip install html5libfrom lxml import etreefrom bs4 import BeautifulSoup# text中<tr>标签只有闭合标签,没有起始标签text = """<table> <td>姓名</td> <td>年龄</td> </tr> <td>出生日期</td&..原创 2020-07-11 23:08:59 · 613 阅读 · 0 评论 -
将大量form表单键值对用sublime处理成字典
选择内容替换的方式是用正则表达式:内容填写(需要把header文件内容处理成字典,中间有个空格,所以加个\s):^(.*):\s(.*)$替换为填写(注意最后有英文逗号):"\1":"\2",原创 2020-07-11 11:18:45 · 336 阅读 · 0 评论 -
response.replace(body=response.text.replace(‘\xa0‘,‘‘)),scrapy抓取网页含\r \t \n \xa0时,修改response方法
xpath抓取数据值有\r\n\t时去掉的方法:https://blog.youkuaiyun.com/z564359805/article/details/101597953抓取网页含\r \t \n时,用normalize-space出现特殊符号有时候并不会成功,例如:['商家 \xa0厦门有限公司'],'\xa0'在网页源码中是' ',可以用如下方法:方法一:修改response这种方法是修改网页代码里面的数据,'\xa0'在网页源码中是' ',个人觉得毕竟不是筛选原创 2020-07-02 16:01:09 · 2966 阅读 · 0 评论 -
XPATH语法contains包含和positon位置及价格大于多少的使用
# 选取class属性包含ing的href链接地址html.xpath("//div/p[2][contains(@class,'ing')]/a/@href")# 选取价格大于20元书的价格值html.xpath("//book[price>20.00]/price/text()")# 选取前2本书html.xpath("//book[position()<3]/title/text()")...原创 2020-06-29 16:24:55 · 581 阅读 · 0 评论 -
xpath抓取数据值有\r\n\t时,去掉的方法normalize-space()
主要使用:normalize-space()之前写法:response.xpath('//*[@id="to"]/tbody/tr/td[3]/a/text()')修改后:response.xpath('normalize-space(//*[@id="to"]/tbody/tr/td[3]/a/text())')原创 2019-09-28 09:51:41 · 3019 阅读 · 3 评论 -
XPATH如何选择不包含某一个属性的节点?
XPATH如何选择不包含某一个属性的节点?今天博主在写一个爬虫的时候就碰到了这个问题。我们知道选择包含某一特定属性的节点,可以使用例如//tbody/tr[@class]来选择。那么不含某属性的节点如何用xpath取得呢?这里可以用到not。例如排除一个属性的节点可以使用//tbody/tr[not(@class)]来写,排除一个或者两个属性可以使用//tbody/tr[not(@clas...转载 2019-03-04 11:14:21 · 1925 阅读 · 0 评论 -
xpath获取同级元素
http://www.w3school.com.cn/xpath/index.asp xpath教程XPath轴(XPath Axes)可定义某个相对于当前节点的节点集: 1、child 选取当前节点的所有子元素 2、parent 选取当前节点的父节点 3、descendant 选取当前节点的所有后代元素(子、孙等) 4、ancestor 选取当前节点的所有先辈(父、祖父等) 5...转载 2018-11-29 15:10:07 · 1045 阅读 · 0 评论 -
python3从本地excel表格获取账号,实现后台系统的登录,并获取运费后保存到表格中
1、首先有一个账号的excel文件,里面包含企业名称、登录账号以及登录密码;2、获取账号文件里面的信息,实现模拟登录,登录成功则获取运费,登录失败则提示并且将失败的手机号颜色标红;3、后台网站用XXXX代替。#!/usr/bin/env python# coding=utf-8# 获取后台系统的运费规则,保存到表格中,其中登录账号从本地表格中获取# 增加了退出账号功能和多次尝试...原创 2018-08-03 18:07:04 · 815 阅读 · 0 评论 -
xpath语法中,如何查询值为空的节点?
xml.xpath("//[XX[.!='']]")------------------------------------------------------------------------------------------------------类似于: //td[.!= '']if each.xpath("./td[2]/text()[.!= '']"): self.posi...原创 2018-06-07 16:39:05 · 5408 阅读 · 1 评论