xpath使用

使用xpath 需要导入lxml 这个包
没有装的 可以 pip install lxml

我们就以 http://langlang2017.com/ 为例简单介绍一下xpath的使用

import requests
#从lxml中导入etree  这个就是转化页面
from lxml import etree

#代理ip
proxy = {
    "HTTP": "113.3.152.88:8118",
    "HTTPS": "219.234.5.128:3128",
}

url = "http://langlang2017.com/"
content = requests.get(url, proxies=proxy).content.decode("utf-8")
#把请求回来的页面  用etree.HTML 进行转换
html_tree = etree.HTML(content)
#这样就可以使用xpath了

#	在xpath中 / 代表当前文档路径 所以第一次/就是在<html></html>
# //  代表全局查找

#这里意思 在网页中全局找到<title>标签获取里面的 文本内容  返回是一个列表
title = html_tree.xpath('//title/text()')

# @是获取指定属性

#//div[@class="dizhi"]/text()
# 在网页中全局找到<div class="dizhi"> 这个标签的文本内容

# |  代表 and的意思
#//div[@class="dizhi"]/text()|//div[@class="beian"]//text()
#所以这句就是全局找到<div class="dizhi"> 这个标签和<div class="beian"> 这个标签的文本内容
info=html_tree.xpath('//div[@class="dizhi"]/text()|//div[@class="beian"]//text()')
# print(info)  #取div的所有文本

info=html_tree.xpath('//div[@class="dizhi"]/text()|//div[@class="beian"]/text()|//div[@class="beian"]/a/text()')
# print(info[0],"\t",info[-2]+info[-1])

li_lxml=html_tree.xpath('//li')
for i in li_lxml:

#如果想获取 img 或者 a 标签的 alt,src,href的属性值
#就可以使用img/@alt  
img_info=i.xpath('./img/@alt|./img/@src')
    print(img_info[0],img_info[-1])





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值