文档章节

一个网站的诞生01--缘由

brian_2017
 brian_2017
发布于 2017/01/17 09:41
字数 1107
阅读 1
收藏 0
大概在半年前,我觉得需要做一个网站,寻找新奇有趣的餐厅。


喜欢美食的人,在中意餐厅吃久了,总想找新餐厅换换口味,试试新菜和新的食材。


寻找新餐厅并不容易,甚至是艰难。由于众所周知的原因,网上流传的餐厅文,美食文,常常不可信,编排越精美,越可能是软广---大家天天都很忙,很少有闲心做这么精美的文宣。我跟这些美食文找过,失望大于希望,成功率不到一半。而且,魔都太大,打听到的餐厅,总要去试吃一下,来来回回总跑上几个小时吧?时间很宝贵,这么做太不划算了!


上海的餐厅大众点评网收集的最齐全,如果我把它上面所有的上海餐厅都抓取下来,统计和分析每家的评论,找到品质靠谱的餐厅就容易得多。


每家餐厅,只统计最近一个月的评论。因为按照总评论数对餐厅进行排序是不合理,有些餐厅开业十多年,累计起来的总评论数很高,但不能反应近期的品质。新开业的餐厅总评论数不高,即使体验再好,排名也不会高。如果只统计最近一个月的评论进行排序,会更准确。


餐厅排序之后,把排名最前的3000家餐厅在地图上标记出来,拖动地图会刷新标记,显示当前地图范围内的餐厅。那么,当我要寻找餐厅的时候,只要拖拖地图,就能找到靠谱餐厅。还可以根据餐厅的分布,去餐厅密度高的地方吃饭,那就更不会错了。


经过两个多月的开发,这个网站的Demo发布了,是最佳餐厅.com,网址在http://www.zuijiacanting.com。




这个网站,现在发布上海的Top 3000餐厅。每个月的月初,会自动抓取大众点评网上的所有上海餐厅,统计和分析后,更新排名和标记。


这个项目做下来,涉及到的东西还是蛮多的。主要的开发语言是python。大众点评网的抓取,用的是Python Scrapy爬虫框架。数据库是MySQL 5.5。数据库ORM是SQLAlchemy。Web后端是Tonado框架,前端是Bootstrap, css, html, javascript, JQuery。在线地图用的是百度地图。代码版本管理是Git,操作系统是Ubuntu 12.04,网站具有自动部署和自动监控功能。域名在CheapName申请的。架设网站的主机是在Linode的,选的是东京机房,有点小贵,但好在国内访问速度够快,而且不需要备案。期间请了一个朋友帮我改进导航栏美工效果,美工这个东东我不擅长。


我准备维护它一年时间,如果使用的人多的话,我会考虑拉一些投资,将网站做大。如果做大的话,会请设计师和美工重新设计页面,美化页面。增加搜索地址餐厅的功能。抓取更多的城市,包括国外的城市。抓取更多社交网络的数据,诸如新浪微博,Yelp,人人,街旁,以及微信,作成与Klout类似的餐厅打分排名系统。让网站支持诸多更多的第三方登录,如豆瓣,微博,微信,QQ。开发IOS和Android版本,发布移动版。


我准备做一个系列把这个开发过程写出来。有兴趣的同学可以把它作为一个入门级的参考资料。


如果从头做一个类似的网站,用python开发应该是最快的。但并不是说这就够了,想把它做到非常成功,每个环节都有大量的优化和改进问题。比如说,如何让web服务器支持高并发。比如抓取用Nutch做,并做全文检索。比如设计,美工,和前端,资深的设计师美工和前端工程师紧缺到爆!比如用NoSQL数据库代替MySQL,加速查询检索和抓取。比如网站的安全和运维,也是问题多多。每个小领域都需要时间和经验的积累,技术进步无止境。

© 著作权归作者所有

brian_2017
粉丝 3
博文 61
码字总数 145216
作品 0
私信 提问
正则文本替换器--RegexReplacer

说明:本软件是一款桌面工具,使用java swing编写,运行需要jre环境。 软件主界面: 功能介绍:该工具是在java的正则表达式上,引入了替换表达式特性(可穿插使用替换函数),可以实现极为复...

trytocatch
2015/02/09
1K
0
运营这个职业的诞生缘由「社区运营入门系列④」

时隔一年,再次提笔继续这个系列,实在应该感谢问道里的这个问题。 运营的职业规划和职业定位是什么? 很高兴有人提出了这个问题,居然令我产生了若不回答会于心不安的感觉,于是在疲惫的顺义...

小废物
2018/06/26
0
0
前端开发.Html5.HTML5简单概述

HTML5的简介? 1.HTML5是HTML4.01和XHTML1.0之后的超文本标记语言的最新版本,它由一群自由思想者组成的团队设计出来,并最终实现多媒体支持,交互性,更加智能的表单,以及更好的语义化标记 2.HT...

满满李
2016/06/13
42
0
如何快速发现网站恶意镜像与网页劫持?

本文作为一篇软文,没错,就是软文,主要目的是宣传产品(太直接了是不是不太好),但是小编保证,本文所说的皆为事实,可作为呈堂证供~! 互联网时代下,每个网站最看重的指标是什么? 流量...

OneAPM蓝海讯通
2016/01/18
36
0
为什么同样的sql语句(插入emoji字符),两次执行结果却不同?

为什么同样的sql语句,两次执行结果却不同,如下所示: 因为该死的编辑器不支持表情符号,只好截屏了. 第一条sql中的data内容是从网站(http://getemoji.com/)中copy过来的, 第二条sql是直接在命令...

zgw06629
2015/05/01
875
2

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周四乱弹 —— 当你简历注水但还是找到了工作

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @花间小酌 :#今日歌曲推荐# 分享成龙的单曲《男儿当自强》。 《男儿当自强》- 成龙 手机党少年们想听歌,请使劲儿戳(这里) @hxg2016 :刚在...

小小编辑
今天
2.9K
22
靠写代码赚钱的一些门路

作者 @mezod 译者 @josephchang10 如今,通过自己的代码去赚钱变得越来越简单,不过对很多人来说依然还是很难,因为他们不知道有哪些门路。 今天给大家分享一个精彩的 GitHub 库,这个库整理...

高级农民工
昨天
5
0
用好项目管理工具,人人都可以成为项目经理

现在市面上的项目管理工具越来越多了,但是大多数都是一些协同工具或轻量项目管理工具。如果是多团队、跨部门使用或者企业级的项目管理,从管理思想到工具运用,需要适应企业的业务流程体系,...

cs平台
昨天
12
0
只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
昨天
69
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
昨天
32
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部