生成一个爬虫二手房网站代码
时间: 2025-01-05 22:48:02 浏览: 3
好的,我可以为您提供一个简单的Python爬虫代码示例,用于爬取二手房网站的信息。这个示例使用了requests和BeautifulSoup库来获取和处理网页内容。请注意,在实际使用时,您需要遵守目标网站的robots.txt规则和使用条款。
以下是一个基本的爬虫代码示例:
```python
import requests
from bs4 import BeautifulSoup
import csv
# 设置请求头,模拟浏览器访问
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)'
' Chrome/91.0.4472.124 Safari/537.36'
}
# 目标URL
url = 'https://www.example.com/ershoufang/'
# 发送HTTP请求
response = requests.get(url, headers=headers)
# 检查请求是否成功
if response.status_code == 200:
# 解析网页内容
soup = BeautifulSoup(response.text, 'html.parser')
# 找到所有二手房信息
houses = soup.find_all('div', class_='info-container')
# 打开CSV文件准备写入数据
with open('ershoufang.csv', 'w', newline='', encoding='utf-8') as file:
writer = csv.writer(file)
writer.writerow(['标题', '位置', '价格', '面积', '户型', '朝向', '楼层', '建造时间'])
# 遍历每套房子,提取信息
for house in houses:
title = house.find('div', class_='title').get_text(strip=True)
location = house.find('div', class_='positionInfo').get_text(strip=True)
price = house.find('div', class_='priceInfo').get_text(strip=True)
size = house.find('div', class_='houseInfo').get_text(strip=True).split('|')[0]
layout = house.find('div', class_='houseInfo').get_text(strip=True).split('|')[1]
orientation = house.find('div', class_='houseInfo').get_text(strip=True).split('|')[2]
floor = house.find('div', class_='houseInfo').get_text(strip=True).split('|')[3]
year_built = house.find('div', class_='houseInfo').get_text(strip=True).split('|')[4]
# 写入CSV文件
writer.writerow([title, location, price, size, layout, orientation, floor, year_built])
print("爬取完成")
else:
print("请求失败,状态码:", response.status_code)
```
这个代码示例做了以下几件事:
1. 导入必要的库:requests用于发送HTTP请求,BeautifulSoup用于解析HTML,csv用于处理CSV文件。
2. 设置请求头,模拟浏览器访问,以防止被网站屏蔽。
3. 发送HTTP GET请求到目标URL。
4. 检查请求是否成功(状态码200)。
5. 使用BeautifulSoup解析网页内容。
6. 找到所有包含二手房信息的div元素。
7. 打开一个CSV文件用于存储爬取的数据。
8. 遍历每套房子,提取所需的信息。
9. 将提取的信息写入CSV文件。
请注意,这个示例中的CSS选择器(如'div', class_='info-container')需要根据实际网站的结构进行调整。同时,一些网站可能有反爬虫机制,可能需要使用更高级的技术,如使用Selenium模拟浏览器行为等。
阅读全文