爬虫 | xpath + lxml 库 解析爬取网页

lxml 库是用来解析XML和HTML网页内容的
Xpath 库则是用来查询数据(XPath表达式是一种在XML文档中查找信息的语言,它同样适用于HTML文档)
注意xpath中索引是从1开始而不是0
简单示例:

# 先pip install lxml

  import requests  
  from lxml import etree  # etree主要是用来解析和操作XML/HTML文档
    
  # 步骤3:获取网页内容  
  url = 'http://example.com'  # 替换为你想要爬取的网页的URL  
  response = requests.get(url)  
  html_content = response.text  
    
  # 步骤4:解析网页内容  
  tree = html.fromstring(html_content)  
    
  # 步骤5:使用XPath查询数据  
  result = tree.xpath('//h1/text()')  
    
  # 步骤6:处理查询结果  
  for item in result:  
      print(item.strip())  # 去除可能存在的空白字符并打印

补充关于etree.parse() 和 etree.fromstring()以及 etree.XML()的区别


* etree.parse() 用来解析XML文档或类似文件的对象,所以参数中提供文件名或文件对象作为输入
* etree.XML() 用来解析字符串:该字符串是完整的 XML 文档(即包含根元素),所以参数中放入完整的 XML 字符串作为输入 【etree.HTML()一回事,放完整的HTML文档】
* etree.fromstring() 用来解析字符串:不一定包含根元素,所以参数中放入 XML 字符串作为输入

posted @   abloger  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示