两年前我就想做一个山寨小游戏网站了,那时Bob和Machael提出做一个小游戏平台,主要idea是只做平台,广告商提供广告和支付广告费;开发者上传自己开发的游戏,根据引用数量的多少赚钱;发布商在SNS网站、博客、个人网站等通过发布游戏,通过PV和点击率等来赚钱。最终,这一Idea没有实现。

我没有这么多能力做那么大的一个平台,但我觉得去山寨一个游戏网站还是挺简单的,但是苦于没有那么大的空间去上传那么多的游戏,GAE是可以上传的,但是 GAE有文件大小和文件数量的限制。两年之后的今天,我买了一块空间,无限量硬盘,我觉得时机成熟了。现在我的python已经比两年前纯熟了不少,web方面也好了许多。

我的山寨思路大概是:
一、先扒某游戏网站的所有游戏。
二、上传某游戏网站的所有游戏到自己空间上。
三、买一个好记的域名,做一个网站。

为什么要扒游戏和上传呢?原因很简单:
1、某游戏网站的游戏都不是原创的,我扒他的也顶多是黑吃黑罢了。
2、外链的不一定可靠。某游戏网站服务器上做防止外链(例如判断reference)或者变动服务器,外链就得修改了。

如何获得某游戏网站的所有游戏?
1、先获得所有游戏页面的url,只需要按照分类来就好了。大概有十几个分类,分类首页大概是htt[://***//1_1.html这样子。在分类首页就有该分类的游戏列表,使用正则表达式就可以轻松获取url了。
——这一步已实现,获得了23842条记录,每条记录由页面url、游戏分类、游戏id、游戏名称四个部分组成。

2、根据上述获得的url列表,使用多线程去解析这些页面,在每个页面使用正则表达式获取游戏的简介及swf的地址。
——这一步也已实现。swf地址是一个相对的url,加上Server的地址就是完整的游戏url了。
根据我的观察,某游戏网站.com至少有9台服务器。

3、根据swf地址,下载所有游戏到本地。
——正在下载中。思路是完全克隆某游戏网站的游戏路径,所以先用python将swf地址列表按路径来划分到文件中去(已经划分出1708个分类),然后使用wget读文件在后台去下载。wget真是个利器,比我写的多线程下载要轻松多了。

由于硬盘剩余空间不多,只能是下载一部分上传一部分了,删除完之后删除再继续下载。
——待实现,没有技术难度,下载和上传就是体力活。就是耗费时间。有线通很慢。可能上传完要很长时间了。我这边wget最多同时只能开5个,要不就很慢了。1000个文件大概就是1个多G,一共有23000多个文件,预计要25G~30G左右了,下载上传完要很多很多天。

网站前台:
Template:基本拷贝某游戏网站的,在其基础上编辑,加上自己的广告。
考虑在加载Flash文件时是否显示广告(通过js)
Model:要考虑点击数来判断出最热门的游戏,来列出排行榜。
考虑用户积分,登陆有积分,可以兑换成实况炒股的虚拟货币,呵呵,以后都要加上这样的model。
View:
要考虑显示最近好友玩过的几个游戏;
游戏页面上显示最近玩这个游戏的用户。
首页上要显示最近来的用户都在玩什么游戏。
动态切换Server,免得负载过重,可以参考实况炒股的做法分流到9个已知某游戏网站的Server上,连我的服务器刚好就是10台了,很合适。
——TODO,慢慢来,放宽点时间,预计五一完成就好了。