继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

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

holdtom
关注TA
已关注
手记 1703
粉丝 240
获赞 991


因为本人作息时间严重不规律, 导致开心网(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

0


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP