xpath & csv文件读写

原理:拿到网页源代码并且进行分析

关键词:etree     .xpath      a[@href="dapao"]      a/@href       text()

复制代码
import requests,csv
from lxml import etree

resp = requests.get(url)
html=etree.HTML(resp.text)
divs=html.xpath('//*[@class="new-service-wrap"]/div')
#定位的是 包含所有数据元素的大框/div(要下面全部的div 每个div都成为一个对象)


 
for div in divs:  #相对对查找  ./
        price=div.xpath('./div/div/a[1]/div[2]/div[1]/span[1]/text()')[0].strip('¥') #去除多余字符  默认strip()移除所有空白


resp.close()
        
复制代码

 拿标签文本

    <em style="width:80px;">2.00</em>
result2=tree.xpath('/html/body/ul/li[1]//em/text()') 

筛选标签属性拿文本

tree.xpath('/html/body/ol/li/a[@href="dapao"]/text()') 

拿标签里的属性值

i.xpath('./a/@href')
#相对查找
#结果都是列表

csv文件读写

f=open("csv/pig.csv", mode='w', encoding='utf-8')
csvwriter=csv.writer(f)  #创建一个写的对象

i=['1','2','3','4']
csvwriter.writerow(i)
f.close()

 

posted @   磕伴  阅读(89)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示