In [9]:
import requests
import random
import time
from lxml import etree
# 定义 headers 变量
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'
}
from tqdm import tqdm
import csv
import pandas as pd
def main(page_range, csv_writer, data_list):
city_en = 'hz'
# 初始化进度条
for page in tqdm(page_range, desc="Progress"):
url = f'https://{city_en}.zu.fang.com/house/i3{page}/?rfss=1-9988c4a227ce113113-a6'
resp = requests.get(url, headers=headers)
tree = etree.HTML(resp.text)
dl_list = tree.xpath('//div[@class="houseList"]/dl')
if len(dl_list) == 0:
print(f'第 {page} 页IP异常!验证码警告!请返回官网刷新验证码!')
continue
for dl in dl_list:
href = dl.xpath('./dt/a/@href')[0]
href = f'https://{city_en}.zu.fang.com' + href
try:
house_info = get_details(href, csv_writer)
# 检查是否有缺失数据
missing_data = {k: v for k, v in house_info.items() if v == '暂无数据'}
if missing_data:
print(f"房源 {href} 缺少以下数据: {', '.join(missing_data.keys())}")
else:
data_list.append(house_info) # 只有获取到数据时才加入列表
time.sleep(random.random())
except Exception as e:
print(f"抓取房源 {href} 时出错: {e}")
pass
def get_details(url, csv_writer):
headers['referer'] = 'http://search.fang.com/'
resp = requests.get(url, headers=headers)
tree = etree.HTML(resp.text)
# 房屋信息
house_info = {}
# 房屋租金
try:
house_info['price'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[1]/div/i/text()')[0] + '元/月'
except:
house_info['price'] = '暂无数据'
# 交付方式
try:
house_info['pay_type'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[1]/div/a/text()')[0]
except:
house_info['pay_type'] = '暂无数据'
# 出租方式
try:
house_info['hire_style'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[2]/div[1]/div[1]/a/text()')[0]
except:
house_info['hire_style'] = '暂无数据'
# 房屋户型
try:
house_info['house_type'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[2]/div[2]/div[1]/text()')[0]
except:
house_info['house_type'] = '暂无数据'
# 房屋面积
try:
house_info['house_area'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[2]/div[3]/div[1]/text()')[0]
except:
house_info['house_area'] = '暂无数据'
# 房屋朝向
try:
house_info['house_direct'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[3]/div[1]/div[1]/text()')[0]
except:
house_info['house_direct'] = '暂无数据'
# 楼层
try:
house_info['floor'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[3]/div[2]/div[1]/a/text()')[0]
except:
house_info['floor'] = '暂无数据'
# 房屋装修
try:
house_info['house_dec'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[3]/div[3]/div[1]/a/text()')[0]
except:
house_info['house_dec'] = '暂无数据'
# 小区
try:
house_info['xiaoqu'] = tree.xpath('//*[@id="agantzfxq_C02_07"]/text()')[0]
except:
house_info['xiaoqu'] = '暂无数据'
# 距地铁距离
try:
house_info['subway_meter'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[4]/div[2]/div/a/text()')[0]
except:
house_info['subway_meter'] = '暂无数据'
# 地址
try:
house_info['place'] = tree.xpath('/html/body/div[5]/div[1]/div[5]/div[4]/div[3]/div[2]/a/text()')[0]
except:
house_info['place'] = '暂无数据'
# 配套设施
try:
other_fac_list = tree.xpath('/html/body/div[5]/div[2]/div[1]/div[2]/div[2]/ul/li/text()')
house_info['other_fac'] = ' '.join(other_fac_list)
except:
house_info['other_fac'] = '暂无数据'
# 房源亮点
try:
house_info['house_light'] = tree.xpath('/html/body/div[5]/div[2]/div[1]/div[1]/div[2]/div/div/ul/li[1]/div[2]/text()')[0]
except:
house_info['house_light'] = '暂无数据'
# 写入 CSV 文件
csv_writer.writerow(house_info)
return house_info # 返回数据以便后续保存到 Excel
In [11]:
import csv
import pandas as pd
# 打开 CSV 文件
with open('output.csv', 'w', newline='', encoding='utf-8') as csvfile:
fieldnames = ['price', 'pay_type', 'hire_style', 'house_type', 'house_area', 'house_direct', 'floor', 'house_dec', 'xiaoqu', 'subway_meter', 'place', 'other_fac', 'house_light']
csv_writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
csv_writer.writeheader()
data_list = [] # 用于保存所有抓取到的数据
main(range(1, 6), csv_writer, data_list) # 抓取第一页到第五页
# 保存到 Excel 文件
df = pd.DataFrame(data_list)
df.to_excel('output.xlsx', index=False)
Progress: 0%| | 0/5 [00:00<?, ?it/s]
房源 https://hz.zu.fang.com/chuzu/3_264257840_1.htm 缺少以下数据: floor 房源 https://hz.zu.fang.com/chuzu/3_263994043_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264596605_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264600735_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264560500_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264505241_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264596558_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264583737_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264611196_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264578732_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264606386_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598436_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264583335_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264585357_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_262740822_1.htm 缺少以下数据: floor 房源 https://hz.zu.fang.com/chuzu/3_264574567_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264573385_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264573380_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264543250_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264578744_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264592786_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598284_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598279_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264441373_1.htm 缺少以下数据: place
Progress: 20%|██████████████▊ | 1/5 [01:07<04:28, 67.15s/it]
房源 https://hz.zu.fang.com/chuzu/3_264576622_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264383943_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264573394_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264573385_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264560500_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264596570_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264449068_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264611196_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264573157_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264491123_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_262740822_1.htm 缺少以下数据: floor 房源 https://hz.zu.fang.com/chuzu/3_264596605_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264573380_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598436_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264606383_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264592786_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264612088_1.htm 缺少以下数据: floor, place 房源 https://hz.zu.fang.com/chuzu/3_264597819_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264611996_1.htm 缺少以下数据: floor, place 房源 https://hz.zu.fang.com/chuzu/3_264612495_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264612029_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264597947_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264470906_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598621_1.htm 缺少以下数据: place
Progress: 40%|█████████████████████████████▌ | 2/5 [02:10<03:14, 64.90s/it]
房源 https://hz.zu.fang.com/chuzu/3_264533471_1.htm 缺少以下数据: floor 房源 https://hz.zu.fang.com/chuzu/3_264482455_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598623_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_263993756_1.htm 缺少以下数据: floor 房源 https://hz.zu.fang.com/chuzu/3_264600078_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598321_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264612037_1.htm 缺少以下数据: floor, place 房源 https://hz.zu.fang.com/chuzu/3_264347924_1.htm 缺少以下数据: floor 房源 https://hz.zu.fang.com/chuzu/3_264347869_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264533461_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264612493_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264480308_1.htm 缺少以下数据: xiaoqu, place 房源 https://hz.zu.fang.com/chuzu/3_264612001_1.htm 缺少以下数据: floor, place 房源 https://hz.zu.fang.com/chuzu/3_264612004_1.htm 缺少以下数据: floor, place 房源 https://hz.zu.fang.com/chuzu/3_264500615_1.htm 缺少以下数据: floor 房源 https://hz.zu.fang.com/chuzu/3_264597916_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264596131_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264516824_1.htm 缺少以下数据: place
Progress: 60%|████████████████████████████████████████████▍ | 3/5 [03:07<02:02, 61.25s/it]
房源 https://hz.zu.fang.com/chuzu/3_264516811_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264482447_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_263993992_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264347787_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264599958_1.htm 缺少以下数据: floor, place 房源 https://hz.zu.fang.com/chuzu/3_264600078_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264482466_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598321_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264597778_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264604996_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598317_1.htm 缺少以下数据: floor, place 房源 https://hz.zu.fang.com/chuzu/3_264611985_1.htm 缺少以下数据: floor 房源 https://hz.zu.fang.com/chuzu/3_264611987_1.htm 缺少以下数据: floor 房源 https://hz.zu.fang.com/chuzu/3_264612493_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264599933_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264516824_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264347781_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264598622_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264157351_1.htm 缺少以下数据: floor
Progress: 80%|███████████████████████████████████████████████████████████▏ | 4/5 [04:09<01:01, 61.79s/it]
房源 https://hz.zu.fang.com/chuzu/3_264612007_1.htm 缺少以下数据: floor, place 房源 https://hz.zu.fang.com/chuzu/3_264604965_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264604996_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264612010_1.htm 缺少以下数据: floor, place 房源 https://hz.zu.fang.com/chuzu/3_264612043_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264482454_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264604994_1.htm 缺少以下数据: place 房源 https://hz.zu.fang.com/chuzu/3_264608993_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264596158_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264598306_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264214937_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264482432_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264482426_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264153946_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_263993947_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264516841_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264598345_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264598343_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264482468_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264559260_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264347985_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264612490_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264604986_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264599911_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264600035_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_263993919_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264597924_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264482459_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_263994038_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264559218_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264500614_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264601048_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264533477_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264599946_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264598618_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264604982_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264482429_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264559293_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264599920_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264604972_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_263994532_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264559231_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264482456_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264516830_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264482461_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264533470_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264605057_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264559305_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264559297_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light 房源 https://hz.zu.fang.com/chuzu/3_264516814_1.htm 缺少以下数据: price, pay_type, hire_style, house_type, house_area, house_direct, floor, house_dec, xiaoqu, subway_meter, place, house_light
Progress: 100%|██████████████████████████████████████████████████████████████████████████| 5/5 [05:00<00:00, 60.17s/it]
In [13]:
import pandas as pd
# 读取 CSV 文件
df = pd.read_csv('output.csv')
# 字段名称的中英文转换
df.columns = ['房屋租金', '交付方式', '出租方式', '房屋户型', '房屋面积', '房屋朝向', '楼层', '房屋装修', '小区', '距地铁距离', '地址', '配套设施', '房源亮点']
# 添加城市列,内容全部为杭州
df.insert(0, '城市', '杭州')
# 保存为 CSV 和 Excel 文件
df.to_csv('转换后的数据.csv', index=False)
df.to_excel('转换后的数据.xlsx', index=False)
print("转换完成,文件已保存。")
转换完成,文件已保存。
In [ ]: