为了账号安全,请及时绑定邮箱和手机立即绑定

Hacking 开心网(虚拟朋友) with Mechanize

标签:
Ruby


因为本人作息时间严重不规律, 导致开心网(kaixin001)里养的宠物mm快饿死了。。。  于是想写一个外挂,来帮mm自动按时喂食, 本想把此脚本偷偷放服务器的crontab里:) ,用ruby写很简单,完成的代码如下:

配置文件: pp.yml

logins:

    url: [url]http://www.kaixin001.com/login/login.php[/url]

    email: [email]xxx@xxx.com[/email]

    password: xxxxxx

trueman:

    url: [url]http://www.kaixin001.com/app/app.php?aid=1068[/url]

主文件: kaixin_trueman.rb

require 'rubygems'

require 'mechanize'

require 'yaml'

class KaixinTrueMan < WWW::Mechanize

    if not File.exists?('pp.yaml')

        puts "Please setup the pp.yaml for configuration first"

        exit

    end

    conf        = YAML::load_file('pp.yaml')

    logins    = conf["logins"]

    trueman = conf["trueman"]

    KAIXIN_EMAIL = logins["email"]

    KAIXIN_PWD     = logins["password"]

    LOGIN_URL        = logins["url"]

    TRUEMAN_URL    = trueman["url"]

    attr_accessor :logged_in

    def initialize

        super

    end

    def spider_to(url=TRUEMAN_URL)

        login or return false unless self.logged_in

        sleep(3)

        page = post(url)

        if page.uri.to_s == TRUEMAN_URL

            return page

        end

    end

    def feeding

        page = spider_to

        sleep(3)

        # get flash

        page.search("//div[@id='mainplayer']")

     

        #    TODO

        #    ... ...

    end

    private

    def login(email = KAIXIN_EMAIL,password = KAIXIN_PWD)

        @logged_in = begin

            page = post(LOGIN_URL,{"email" => email,"password" => password})

            if page.uri.to_s == 'http://www.kaixin001.com/home/'

                return true

            else

                history.clear

                return false

            end

        end

    end

end

:(   现在可以让这个spider爬到mm身边了, 可是想要下手帮mm喂食,却困难了。。。因为碰到个flash文件 。。。  研究了两天没有结果。。。暂时告一段落吧。

©著作权归作者所有:来自51CTO博客作者blackanger的原创作品,如需转载,请注明出处,否则将追究法律责任

ruby开心网kaixin001


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消