Fang

React + BaiduMap + Node.js , 实现的上海各小区房价一览表。Demo。

  • Owner: xuchaobei/Fang
  • Platform: Linux, Mac, Windows
  • License:: MIT License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

项目简介

本项目是基于React、Node.js、MongoDB 实现的一个JS全栈项目,项目用于查询上海各小区的房价信息。

项目中使用BaiduMap 用于以地图模式浏览小区,使用Koa作为Web后台框架,项目的编译构建使用的是webpack。

各小区的房价信息通过爬虫从链家网上抓取,然后存取到MongoDB中。Node.js 和 Python实现了两种爬虫。

截图

image

安装及运行

  1. 环境准备:Node.js、MongoDB、Python(可选)。
  2. 进入项目根路径。
  3. 执行 npm run build 安装项目依赖。
  4. 执行 npm run dev , 启动项目。
  5. 浏览器访问http://localhost:8080
  6. 此时网页中是没有小区数据的,需要通过爬虫抓取小区房价信息。
    提供了两种爬虫实现:
    (1) 访问http://localhost:8080/crawler , 触发Node.js实现的爬虫。注意,虽然这个接口会立即返回,但抓取数据的过程实际上是异步的,可以通过控制台的日志观察当前的数据抓取情况。
    (2) 在项目根路径下,执行python crawler.py , 触发Python实现的爬虫。

关于爬虫的注意事项:链家网对于接口的调用是有频率和次数限制的,虽然在程序中加了延迟时间用来降低访问链家网接口的频率, 但实际测试下来,仍然无法抓取所有数据。想要抓取更多的数据,可增加程序的延迟时间,或者分多次抓取数据。

声明

爬虫抓取的数据来源于链家网,仅作为学习使用。

参考项目: https://github.com/vvsuperman/fkEstate

License

MIT

Main metrics

Overview
Name With Ownerxuchaobei/Fang
Primary LanguageJavaScript
Program languageJavaScript (Language Count: 4)
PlatformLinux, Mac, Windows
License:MIT License
所有者活动
Created At2016-09-12 10:30:39
Pushed At2017-06-30 07:24:28
Last Commit At2017-06-30 15:24:20
Release Count0
用户参与
Stargazers Count71
Watchers Count8
Fork Count17
Commits Count17
Has Issues Enabled
Issues Count0
Issue Open Count0
Pull Requests Count0
Pull Requests Open Count0
Pull Requests Close Count0
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private