【python】带你采集房源数据并作房价分析

前言

嗨喽~大家好呀,这里是魔王呐 !

思路

一.分析数据来源

链家二手房数据:多页《—一页

二.案例代码实现

  1. 发送请求,向目标网址发送数据请求

  2. 获取网页源代码<响应文本信息>

  3. 解析数据

  4. 保存数据

采集代码

from lxml import etree
import csv
import requests

因CSDN不能出现网站链接,所以我把下图代码删了,大家可以按照下图片把它添加一下

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36'
}

html = requests.get(url=url, headers=headers)
# print(html.text)
# 解析   转换数据类型
soup = etree.HTML(html.text)
# print(soup)
doc = soup.xpath('//*[@id="content"]/div[1]/ul/li')
# print(doc)

list_1 = []
for fang in doc:
    name = fang.xpath('.//div[@class="title"]/a/text()')[0]
    # print(len(name))
    # print(name)
    address = fang.xpath('.//div[@class="positionInfo"]/a/text()')
    # print(len(address))
    # print(address)
    # for i in range(len(address)):
    if address:
        address = '-'.join(address)
        # print(address)

    # 价格
    price = fang.xpath('.//div[@class="totalPrice totalPrice2"]/span/text()')[0]
    # print(price)
    list_1.append([name, address, float(price)])

print(list_1)
for p in list_1:
    list_2 = p
    print(list_2)

    file = open('ershoufang.csv', mode='a', newline='')
    csv_write = csv.writer(file)
    csv_write.writerow(list_2)

图表

import pandas as pd
from pyecharts.charts import Bar
from pyecharts import options


data = pd.read_csv('./ershoufang.csv', names=['name', 'address', 'price'], encoding='gbk')
print(data)

bar = Bar()
bar.add_xaxis(list(data['address']))
bar.add_yaxis('长沙二手房房价图', list(data['price']))

bar.set_global_opts(
    title_opts=options.TitleOpts(title="长沙二手房价图表"),
    datazoom_opts=options.DataZoomOpts()
)
bar.render('长沙二手房房价图.html')


尾语

要成功,先发疯,下定决心往前冲!

学习是需要长期坚持的,一步一个脚印地走向未来!

未来的你一定会感谢今天学习的你。

—— 心灵鸡汤

本文章到这里就结束啦~感兴趣的小伙伴可以复制代码去试试哦 😝

👇问题解答 · 源码获取 · 技术交流 · 抱团学习请联系👇
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值