上个月做的Steam 价格追踪, 这次又花了几周的时间把 Switch 的价格追踪也做了。
相较于 Steam 的折扣追踪,Switch 这边用了Shrine
做的文件存储 (主要是游戏主图的 variants) 和图片处理,相较于 Active Storage, Shrine 更灵活,更可定制,比如可以做出像/ns_apps/1/image/small-w320.webp
这种漂亮的文件 URL.
用了pagy
做分页,比之前的 Kaminari 快了,尤其是没有多次查 COUNT.
任天堂的区分的比较散,不像 Steam 那种可以有直接的 API, 需要 nokogiri 简单爬/解析一下内容,提取出 CODE 之后才能 API 查价,写爬虫和各个市场区交叉索引比较让人崩溃。
由于网站内容比较简单,几乎没有写任何 JS, 即是是单个游戏的历史价格折线图,也是用了chartkick
gem, 如果没理解错,它里面实际上包了一个chart.js
.
网址在这 , 还欠缺许多功能比如愿望单和打折提醒之类的,喜欢打游戏的 Rails 开发者欢迎提建议