Googleアドセンス競合広告フィルタ更新補助スクリプト
アドセンスの競合広告フィルタに記述してあるドメインがまだ存在するかどうかを簡単にチェックするスクリプトを作ってみました。 恐らく同様のものやサービス等はあるような気がしますが、探すのが面倒だったので自作してみました。 あまりまともな機能はありませんが、いくつか存在しないドメインを見つけて新しいものと差し替えました。
アドセンスをやっていると様々な理由から「表示したくない広告」というものを発見するようになります。 それらの広告を表示しないようにするには「競合広告フィルタ」を使うのが簡単です。 しかし、競合広告フィルタに登録できるURLやドメインは200個までに制限されています。 この200個という貴重な資源を有効活用するには、存在しなくなった広告に対するフィルタを削除する必要があります。
今回作った簡単なスクリプトが行っている事は非常に単純です。 そのドメインに対するNSレコードが存在しているかどうかを確認しています。
NSレコードが発見できなかった場合、Aレコードも確認しています。 これは、例えば「blog.○○.jp」のようなエントリが競合広告フィルタに含まれている場合に対処したものです。
以下のスクリプトの使い方ですが、まず最初にGoogle Adsenseの競合広告フィルタ管理画面に記述されているエントリを全てコピーしてdomains.txtというファイルに保存します。 そのファイルがある場所で、以下のperlスクリプトを実行します。 DNSを使った名前解決に失敗したものは、恐らくobsoleteなフィルタエントリだと思われます。
あまり美しさのない、いい加減な方法だとは思いますが、興味のある方はご利用下さい。
#!/usr/bin/perl
use Net::DNS;
$res = Net::DNS::Resolver->new;
open(FILE, "domains.txt") || die $! . "\n";
while (<FILE>) {
chop;
$domain = $_;
$query = $res->query($domain, 'NS');
print $domain;
print "\n";
if (!$query) {
$query2 = $res->query($domain, 'A');
if (!$query2) {
print " ERROR !!! ";
print $res->errorstring;
print "\n";
} else {
print " found as host\n";
}
next;
}
foreach $rr ($query->answer) {
if ($rr->type eq "NS") {
print " ";
print $rr->nsdname;
print "\n";
}
}
}
close(FILE);
exit;
最近のエントリ
- 日本のIPv6採用状況が50%を超えている件について
- 「ピアリング戦記」の英訳版EPUBを無料配布します!
- IPv4アドレス移転の売買価格推移および移転組織ランキング100
- 例示用IPv6アドレス 3fff::/20 が新たに追加
- ShowNet 2024のL2L3
- ShowNet 2024 ローカル5G
過去記事