url:https://guangzhou.qfang.com/sale 要求: 1. 使用xpath提取数据 2. 爬取数据的城市自选 3. 需爬取前3页数据
时间: 2024-10-25 14:05:14 浏览: 42
URL链接提供的信息看起来像是广州房产销售页面,如果你想使用XPath来爬取数据,首先需要了解该网站的结构和XPath路径规则。XPath是一种用于定位XML文档节点的语言,对于HTML网页也可以通过类似的方式来选择元素。
假设你想爬取每个房源的基本信息,如标题、价格等,可以尝试使用XPath表达式来选取。例如,如果标题在`<h1>`标签内,价格在`<span class="price">`内,你可以这样做:
```python
from lxml import html
import requests
# 设置城市 (这里以广州为例)
city = '广州'
# 分页处理,获取前三页
for page_num in range(1, 4):
url = f'https://guangzhou.qfang.com/sale?page={page_num}'
# 发送请求
response = requests.get(url)
# 检查请求状态码,确认是否成功
if response.status_code == 200:
# 解析HTML内容
tree = html.fromstring(response.text)
# 使用XPath提取数据
houses = tree.xpath('//div[@class="house-item"]') # 假设每个房源是一个div元素
for house in houses:
title = house.xpath('.//h1/text()')[0] # 提取标题
price = house.xpath('.//span[@class="price"]/text()')[0] # 提取价格
print(f"城市: {city}, 标题: {title}, 价格: {price}")
else:
print(f"请求第{page_num}页失败,状态码:{response.status_code}")
```
这只是一个基本的示例,实际的XPath表达式可能会因网站结构的变化而有所不同。记得在爬取数据时遵守网站的robots.txt规定,并尊重版权和隐私政策。
阅读全文