我用Python写了个租房脚本,顺利找到合适的房子!

租过房的孩子都知道,租房是个非常麻烦的事情,要想找到上班方便、生活方便、价格便宜的地方真的不容易,找中介太贵,自己找太费时而且也不一定找得到……

可是,作为一个程序员,你就没想过自己写个租房脚本?!

一、介绍

1. 我为什么要写一个租房脚本?

项目来自一段租房血泪史(夸张):事情是这样的,笔者是接着念大四准备考研,而室友是应届毕业在找工作,说白了就是都没有钱,于是打算合租。因为穷所以不可能找有门店的的中介,只能看看赶集、58、和一些租房APP。期间需要考虑两个人的通勤范围来选地段,由于对交通的不熟悉,只有选择自己附近的较贵的地段,花了很多时间阅览赶集或者58里的个人房源信息,然而个人房源信息中仍充斥着大量中介,抱着一点希望打了几个电话,得到的回答都是这个价位根本租不到,再高点也租不到(大都与发布的房源信息不符)。最后终于还是在宿舍关闭前一个星期租到一个性价比还可以的隔断。毕竟隔断还是不方便的,所以打算在室友找到工作后换一个新地方,于是就有了这个租房脚本和课程。

相信也有不少的应届毕业生可能会遭遇同样的境况,希望我的这个项目能真的帮到大家,也许不光是在租房子方面。

总结一下租房难的症结:

  • 没钱。
  • 小中介发布的价位一般都是假的,会浪费你很多时间。
  • 对交通路线不熟悉以致于选择面窄。
  • 如果是多人,得同时考虑多人的通勤时间。

项目将解决的问题:

  • 学习了技术,增长了知识,就能找到好工作,找到好工作就能有钱。
  • 这次选的房源信息来自58的品牌公寓馆,所以没有那种小中介,价位就我和我室友来说可以接受。其实可以做个分类器过滤赶集上的中介来找低价个人房源的,有需要的同学可以试一下。
  • 通勤范围在地图上圈出,解决了对交通路线不熟悉的问题

这个项目是单人版的,但代码中只要删掉一个语句就能当多人用了(但是路径规划的功能是只能给一个人用)。如果是直接拿来多人用的话,还是开多个页面比较好。

最终效果图如下:

《我用Python写了个租房脚本,顺利找到合适的房子!》 此处输入图片的描述

由于没做前端兼容,导致右上角崩了。自用的小工具其实也不用整多好看,效率第一。

如图,划出来的大片蓝色色块就是距离工作地点一小时车程内的区域。蓝色的标记就是房源,点击后会自动给出路径规划和房源地址。红色标记(不是”终”)是工作地点,在图里被挡住了。工作地点的输入框有自动补完的功能,也是很方便的。至于房源文件我们会通过编写Python脚本在抓取房源信息后生成。

2.项目简介

项目由ekCit发布在实验楼,完整教程及在线练习地址:高德API+Python解决租房问题,可以直接在教程中下载代码使用demo。

我的这个项目是编写Python脚本爬取某租房网站的房源信息,利用高德的 js API 在地图上标出房源地点,划出距离工作地点1小时内可到达的范围,附上公交路径规划功能查看不同路径的用时。

3. 知识点

写个租房脚本是很酷炫,也方便了自己,最重要的还可以学到知识,真是两全其美!

完成过程中,可以学习:

  • requests、BeautifulSoup、csv 等库的简单使用
  • 高德地图 Javascript API 的使用

二、实验原理

实验中会用到三个文件:crawl.py,rent.csv与index.html,其中rent.csv由crawl.py生成,是房源文件。crawl.py是一个非常简单的爬取网页的脚本。index.html是最重要的显示地图的部分。实现的流程大致如下:

《我用Python写了个租房脚本,顺利找到合适的房子!》 此处输入图片的描述

我为什么不把js代码和css代码从index.html中分出来呢,写脚本怎么顺手怎么来就好。

三、项目实现步骤

由于篇幅有限,因此这里就不把详细的实现代码以及实现步骤和思路放上来了,可以点击 高德API+Python解决租房问题 查看详细的开发教程。

当然,最终的实现效果还是要看滴~

四、效果演示

首先选择工作地点,划出了一小时内的通勤范围:

《我用Python写了个租房脚本,顺利找到合适的房子!》 此处输入图片的描述

北京堵车太猖狂,可能还是地铁保险:

《我用Python写了个租房脚本,顺利找到合适的房子!》 此处输入图片的描述

导入房源文件后:

《我用Python写了个租房脚本,顺利找到合适的房子!》 此处输入图片的描述

选择一处房源,会自动帮你规划路径:

《我用Python写了个租房脚本,顺利找到合适的房子!》 此处输入图片的描述

选中房源地址跳转到目标页面:

《我用Python写了个租房脚本,顺利找到合适的房子!》 此处输入图片的描述

最后

    原文作者:实验楼
    原文地址: https://www.jianshu.com/p/fd341e85c934
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞