找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 121|回复: 12

分享一个BuyVM库存量监控的Ruby脚本,求加分~~!彩虹键盘多图

[复制链接]

39

主题

532

回帖

1205

积分

金牌会员

积分
1205
发表于 2012-3-29 21:38:08 | 显示全部楼层 |阅读模式
本帖最后由 timothyye 于 2012-3-30 00:14 编辑

最近神马VPS最火呢?还用问?当然是BuyVM……

在坛子里,看到有不少童鞋利用脚本自动监控BuyVM的库存量,借此脚本,利用短信或者邮件来通知自己抢货,相当不错的办法!好办法值得借鉴和发扬,加之自己最近又在学习Ruby,所以,俺也用Ruby写了这么个脚本…… 现在共享出来,给广大童鞋借鉴。

脚本主要实现的功能:从BuyVM官联通过API接口获取各种产品库存量信息,如果有某个产品库存量不为0,就通过事先设定好的邮箱地址,发送邮件通知。其实逻辑很简单的,就不多介绍了。程序调用的是官网的JSON API接口,所以也用到了JSON库来进行数据的解析。

脚本运行的环境:需要装有Ruby,需要装有SendMail组件,另外,需要安装Ruby的JSON库。

运行此脚本前,可以先测试你的主机是否有Ruby,可以用ruby -v命令,如果提示命令无效,需要先安装Ruby。安装Ruby的方法,仅以Debian系统为例:

apt-get install ruby irb ri

如果你的主机或者VPS中,没有JSON库,程序运行出错,可以用下面的方法安装,仅以Debian系统为例:

apt-get install libjson-ruby

关于如何安装Sendmail组件,相信大家都会安装了。

嗯,环境准备好之后,就可以运行脚本了,来看看我们的脚本:


#BuyVMStock.rb
#Written by Timothy 2012.03.29
#Run it with: ruby BuyVMStock.rb

require 'open-uri'
require 'json'

MailTo = "YourMailAddress@gmail.com"

def SendMailNotify(content)

pipe = IO.popen("/usr/sbin/sendmail -t -v", "w")
pipe.puts "To:" + MailTo + "\n"
pipe.puts "From:BuyVM\n"
pipe.puts "Subject: BuyVM has stock now!"
pipe.puts "BuyVM has stock now! \n" + content

pipe.close_write

end

content = JSON.parse(open("http://www.doesbuyvmhavestock.com/automation.json").read)

emailContent = ''

content.each { |obj
                if obj['qty'] > 0
                                emailContent.concat(obj['name']  + " has " )
                                emailContent.concat(obj['qty'].to_s() + " \n")
                end
}

SendMailNotify(emailContent)


代码很简洁,将里面的变量MailTo,替换为你的邮箱地址即可。运行后,如果官网有剩余库存,你会收到一封邮件。下面是运行结果:





对比官网上的真实数据进行检查,确认无误,嘿嘿……






聪明的站长一定想到了,把这个脚本加入Linux的计划任务里面去,设定一个时间间隔,比如一分钟执行一次,或者五分钟,十分钟,看你的个人喜好了…… 如果你还有个手机神马的,就更方便了,这样可以随时随地知晓BuyVM的库存了:








嗯,就是这样,完了…… 预祝各位抢购愉快……

求各位加分~~~

===================我是分割线===============

既然大家对键盘这么感兴趣,就多上几张键盘的图,解解眼馋,哈哈哈哈













本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

7

主题

178

回帖

387

积分

中级会员

积分
387
发表于 2012-3-29 21:38:56 | 显示全部楼层
彩虹键盘很骚包
回复

使用道具 举报

39

主题

532

回帖

1205

积分

金牌会员

积分
1205
 楼主| 发表于 2012-3-29 21:40:44 | 显示全部楼层

chrome 发表于 2012-3-29 21:38



彩虹键盘很骚包

竟然被你看出来了……
回复

使用道具 举报

65

主题

1089

回帖

2401

积分

金牌会员

积分
2401
发表于 2012-3-29 21:38:00 | 显示全部楼层
键盘是亮点,其他是浮云...
回复

使用道具 举报

395

主题

1286

回帖

3789

积分

论坛元老

积分
3789
发表于 2012-3-29 21:42:37 | 显示全部楼层

vpswz 发表于 2012-3-29 21:43



键盘是亮点,其他是浮云...

看来你们对BuyVM都不来电啊……
回复

使用道具 举报

39

主题

532

回帖

1205

积分

金牌会员

积分
1205
 楼主| 发表于 2012-3-29 21:43:42 | 显示全部楼层
基于debian教程 ruby buyvm 彩虹键盘 BB手机  都是亮点

回复

使用道具 举报

27

主题

2151

回帖

4429

积分

论坛元老

积分
4429
发表于 2012-3-29 21:45:04 | 显示全部楼层

fhs 发表于 2012-3-29 21:59



基于debian教程 ruby buyvm 彩虹键盘 BB手机  都是亮点

多谢捧场,嘿嘿
回复

使用道具 举报

39

主题

532

回帖

1205

积分

金牌会员

积分
1205
 楼主| 发表于 2012-3-29 21:43:00 | 显示全部楼层
我只是觉得键盘不错。。
回复

使用道具 举报

861

主题

8283

回帖

1万

积分

论坛元老

积分
19191
发表于 2012-3-29 21:59:44 | 显示全部楼层
黑莓手机更骚包。。

键盘相当的骚包
回复

使用道具 举报

39

主题

532

回帖

1205

积分

金牌会员

积分
1205
 楼主| 发表于 2012-3-29 22:02:01 | 显示全部楼层

汉陈帝国 发表于 2012-3-29 22:04



我只是觉得键盘不错。。

键盘是Keycool 87 白色茶轴机械键盘,外加自己换的ABS彩虹键帽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Discuz! X

GMT+8, 2025-1-11 17:44 , Processed in 0.024699 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表