xpath进阶

目标:

抓取页面列表信息,并且获取第四个单元格得指定属性

代码:

import requests
from lxml import etree

resp = requests.get('http://xiu.iqixiu.cn/%7Bf24af5d0-4001-446d-82cd-7848fc4c9dc9%7D.htm')
rst1 = resp.content.decode('GBK')

html = etree.HTML(rst1)

tr_list = html.xpath(r'//table/tbody/tr')
for tr in tr_list[2:]:
    #获取这一行所有得文本内容
    name_tr = tr.xpath('string()')
    #将这一行字符串处理,得到一个列表,这样我们可以得到比如地址,电话这些信息,直接用列表下标取出来就可以了
    name_list = name_tr.replace(' ','').replace('\r','').split('\n')
    # print(tr.xpath('./td[4]/text()')[0])
    #去除里面得文本属性值,并字符串处理。因为列表里得文本不全,这个文本属性值比较全
    print(tr.xpath('./td[4]/@*')[-1].replace("'",''))

 这里最重要得是tr.xpath('./td[4]/@*')[-1] 。知识点有

  • ./表示从这一行开始得子节点,./就是当前开始
  • @*表示选取所有属性
  • [-1]表示列表得最后一个元素
  • tr.xpath('./td[4]/@*')[-1]表示得是这一行下第五个单元格元素的所有属性组成的列表的最后一个值。

转载于:https://www.cnblogs.com/chaojiyingxiong/p/10318903.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值