Technology
MyDNS IP通知スクリプト
2011-11-27Perl
といっても、DiCEを使うわけでもなく、HTTPでアクセスしてフォームのsubmitを押すシミュレーションをするという、アナクロかつ一番ダメな手法です。HTTP-Basicとか使うのが手っ取り早いのですが、とりあえずWWW::Mechanizeの秀作として…。
#!/usr/bin/perl
use strict;
use warnings;
use WWW::Mechanize;
# mydns情報
my $mydnsAddr='http://www.mydns.jp/';
my $id='(MyDNS ID)';
my $pw='(MyDNS PW)';
my $mydnsIpDirectAddr='http://www.mydns.jp/?MENU=400';
#####################################################
my $mech = WWW::Mechanize->new();
my $response;
# login
$response = $mech->get( $mydnsAddr );
$mech->form_number(1);
$mech->set_fields('masterid' => $id, 'masterpwd' => $pw);
$response = $mech->submit;
$response = $mech->get( $mydnsIpDirectAddr );
$mech->form_number(2);
$response = $mech->submit;
$mech->form_number(2);
$response = $mech->submit;
formの指定に番号を使っているのがスマートじゃないのですが、form nameが指定されていないのでこの方法です。
Topic
- Languages (24)
- ActionScript (8)
- C# (1)
- Java (6)
- Android (2)
- JavaScript (5)
- JavaScript (4)
- node.js (1)
- Perl (4)
- Database (3)
- MySQL (3)
- Miscellaneous (5)