INS刷赞 -为了看妹子,动-ins流量
2022-07-31,因服务器到期,该网站停止维护了
几个月前刷知乎的时候看见一哥们怕了 Instagram 的图片,建了一个网站,感觉不错。我平时也经常刷 ins 看妹子的图片。so, 作为程序员也想搞个类似的网站,毕竟自己的网站才好玩。
因为墙的存在。。放弃爬 ins 的计划,转而瞄准了微博。
说干就干,开始注册域名,申请备案,然后实现 https加密。(starimg.cn
关于 SSL 证书,腾讯云可以免费申请,所以顺道做了。
买服务器,撘服务器环境。腾讯云因为有优惠所以买了15个月的服务器。
接下来就是网站的整个架构了。
- 数据咋来?怎么存储
- 网站后台用啥语言?
- 网站前端页面怎么渲染?
关于数据:
因为以前用 Python 爬过一次古诗文的数据。(xuegushi.cn所以,数据决定还是通过Python 来爬取。爬的是微博的手机端数据,即 m.weibo.cn 的数据,发现可以获取其 json 字段,是个不错的选择。代码具体见 GitHub:johnnyzhang1992/imageSpider
爬下来数据数据接下来就是存储了。数据主要分两部分,字段以及实际图片。
数据库选择了比较熟悉的 PostgreSql。
- 字段可以选择建表入库;
- 图片要是存到服务器那就要花费太多存储空间了,好在微博的图片并没有做防伪链,所以图片也可以直接入库不必保存到数据库了。
爬完微博不死心,决定爬爬 ins,爬的是开口那哥们做的网站的数据,奈何人家防爬虫做的不错cookie 一直过期而且他的图片是做的服务器缓存一段时间没人访问就自动释放了,那么在数据库直接保存链接看了来是不行,那就直接存到了腾讯云的对象存储 cos 里面。
cos 存储选择了 PHP 的 SDK,那接下开就是看代码,存数据。so,保存 ins 图片也基本搞定了。
关于后台:
代码爬下来入库后,那就要建后台处理数据了。因为工作原因一直用 PHP的框架 laravel ,所以还是选择用这个框架。GitHub 上找了个开源的主题就开始做了。(https://admin.starimg.cn/
因为爬的微博的图片,所以用户的微博广告肯定很多,而且图片也是乱七八槽的啥都有,那就要爬取后做初次的筛选了。一开始是一张一张的来,后来发现太麻烦,开始批量处理。
现在数据基本上可以用了。接下来就要写接口把数据传给前端了。
本来打算用 GraphQL来写,后来发现有点麻烦,暂时放弃了,先用 laravel 的方法写出来打算以后再重写。
关于前端:
前端渲染一开始就决定用 react.js 因为一直对这个框架比较感兴趣。
因为内容大部分是图片,展示的时候希望用 Pinterest 瀑布流的方式。所以开始找插件,在写后台代码以及接口的过程中一直没找到合适的,后来的 GitHub 上偶然发现 Pinterest 人家自己有开源的瀑布流框架那就拿过来直接用呗。框架叫 Gestalt:https://pinterest.github.io/gestalt/
react, react-dom ,gestalt.最后代码用 webpack 进行打包,测试后内容基本实现。
so,一个网站的架子已经搭起来了。