实战 利用Xpath爬取网页数据

本文介绍如何使用Python的requests和lxml库,通过Xpath语法来爬取廖雪峰网站上的信息。步骤包括导入模块、获取网页源代码、解析HTML并提取所需内容,最后展示抓取到的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

爬取廖雪峰网站不同目录网址里的内容

 例如:

  

步骤分析

          1、导入模块

                   import  requests

                   from  lxml  import  etree 

         2、获取源代码

                   html = requests.get

                   html = html.text        # 转换为text格式

### 使用XPath爬取北京二手房数据 #### XPath基本概念与工具 XPath是一种用于通过XML文档结构查找信息的语言,在HTML页面上同样适用。为了更方便地编写XPath表达式,可以借助一些辅助工具来测试和验证这些表达式的准确性[^1]。 #### 实战案例分析 以某二手房网站为例,目标是从该平台获取特定城市(如北京市)的房源详情。整个过程涉及定位到包含所需信息的具体标签,并构建合适的XPath路径去提取它们的内容[^2]。 #### Python代码实现 下面是一个简单的Python脚本示例,它利用`requests`库发送HTTP请求并接收响应;再通过`lxml`解析器读取返回的数据流中的HTML内容,最后应用自定义编写的XPath规则完成最终的信息抽取工作: ```python import requests from lxml import etree def fetch_beijing_secondhand_housing(): url = 'https://bj.lianjia.com/ershoufang/' # 假设这是链家网上北京地区二手房价目页链接 headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" } response = requests.get(url, headers=headers) html_content = response.text tree = etree.HTML(html_content) house_listings = [] titles = tree.xpath('//li/div[@class="info clear"]/div/a/text()')[:10] prices = tree.xpath('//span[@class="totalPrice totalPrice2"]/text()')[:10] for title, price in zip(titles, prices): listing_info = {"title": str(title).strip(), "price": float(price)} house_listings.append(listing_info) return house_listings if __name__ == "__main__": listings = fetch_beijing_secondhand_housing() print(listings) ``` 此段程序会访问指定URL地址下的前十个房产列表项,从中抽取出每套房子的名字以及总价,并将其整理成字典形式存入列表中以便后续处理或展示给用户查看。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值