以前からずっと運用してたんですが( 定期的に呼び出し )、Seesaa のページの仕様が
変わったので少し書きなおしました。実行部分は関数にすべきなんですが、ruby はあまり
詳しくも無いので書き足して使っています。countup3.php は、DB 読んでカウントアップ
した連番を返す処理が書いてあります( もちろん更新 )
#!/usr/local/bin/ruby
print "Content-type: text/html\n\n"
# 標準エラー出力の出力先を標準出力に変更
$stderr = $stdout
require "cgi"
cgi = CGI.new
ENV['GEM_HOME']="/home/lightbox/gems"
$LOAD_PATH.push('/home/lightbox/lib')
require 'rubygems'
require 'mechanize'
agent = WWW::Mechanize.new
#seesaa にログイン
page = agent.get("https://ssl.seesaa.jp/www/pages/welcome/login/input")
form = page.forms.first
form["member__email"] = "メール"
form["member__password"] = "パスワード"
form.submit
page = agent.get("http://winofsql.jp/ruby/countup3.php")
$cnt = (page.body).to_i
$cnt_t = 3
if ($cnt % $cnt_t) == 0 then
# 対象ブログのページ
page = agent.get('https://blog.seesaa.jp/cms/home/switch?blog_id=2107032')
# 設定ページ
page = agent.get('https://blog.seesaa.jp/cms/settings/basics/edit/input')
page.parser.encoding = 'utf-8'
form = page.forms[1]
form["force_reload"] = "1"
page = form.click_button(form.buttons[0])
print "seesaa : logicalerror : update : completed<br>"
# 対象ブログのページ
page = agent.get('https://blog.seesaa.jp/cms/home/switch?blog_id=2094199')
page = agent.get('https://blog.seesaa.jp/cms/settings/basics/edit/input')
page.parser.encoding = 'utf-8'
form = page.forms[1]
form["force_reload"] = "1"
page = form.click_button(form.buttons[0])
print "seesaa : kinsen : update : completed<br>"
end
if ($cnt % $cnt_t) == 1 then
page = agent.get('https://blog.seesaa.jp/cms/home/switch?blog_id=2086898')
page = agent.get('https://blog.seesaa.jp/cms/settings/basics/edit/input')
page.parser.encoding = 'utf-8'
form = page.forms[1]
form["force_reload"] = "1"
page = form.click_button(form.buttons[0])
print "seesaa : GIMPRO : update : completed<br>"
page = agent.get('https://blog.seesaa.jp/cms/home/switch?blog_id=2136480')
page = agent.get('https://blog.seesaa.jp/cms/settings/basics/edit/input')
page.parser.encoding = 'utf-8'
form = page.forms[1]
form["force_reload"] = "1"
page = form.click_button(form.buttons[0])
print "seesaa : instany : update : completed<br>"
end
if ($cnt % $cnt_t) == 2 then
page = agent.get('https://blog.seesaa.jp/cms/home/switch?blog_id=2181378')
page = agent.get('https://blog.seesaa.jp/cms/settings/basics/edit/input')
page.parser.encoding = 'utf-8'
form = page.forms[1]
form["force_reload"] = "1"
page = form.click_button(form.buttons[0])
print "seesaa : webcraft : update : completed<br>"
end
関連する記事
Seesaa のアクセス解析ページからアクセス数と訪問者数を取得する : Ruby+Mechanize
posted by
at 2012-04-28 23:21
|
Comment(0)
|
ブログツール
|

|