読者です 読者をやめる 読者になる 読者になる

ログマニアックス

日々学んだこと、気づいたことをメモ代わりに残していければ。カバー範囲は割と広めです。

あまりにもネットが繋がらないので

たまにはアクセス解析ではない話題を。

自宅の無線LANが最近よく切断、というかネットに接続できなくて困っています。
一応、Windows的にはつながっていることになっているみたいなんだけど、
実際にはサイトにつながらない。

というわけで、ほぼ生まれて初めてですが、
Perlでちょこっとスクリプトを書いたのでメモ。

 

 

動作した環境

ActivePerlで動作確認しています。
WWW::MechanizeとNet::Ping::Externalを使っています。

ルータはAterm WR7600H という機種です。

 

実際のコード

細かいところは変えていますが以下の通り。
PingGoogleにつながるかを試して、
つながったらBasic認証の上でルータの設定画面を開き、リセットを行っています。

特に解説は不要かと。

[code lang="perl"]

#!usr/bin/perl

use strict;

use utf8;

use warnings;

use Encode;

use WWW::Mechanize;

use Net::Ping::External qw(ping);

# pingで外部につながるかテスト(Googleping

my $alive = ping(host => "www.google.co.jp");

if($alive == 0) {

my $mech = new WWW::Mechanize;

my $user_name = "admin";

my $password = "pass";

$mech->credentials($user_name,$password );

$mech->get("http://192.168.0.1/index_menu.html");

$mech->form_number(1);

$mech->click_button(

name => 'No00420000'

);

}

[/code]

初めてつかったけど、WWW::Mechanizeはブラウザをエミュレートできるので、


いろんなタイミングで使えるかも。