たけおクラスタの皆様におかれましては、Webアーカイブサービスである、archive.today の浸透度は高く、相当活用されているかと思います。@lamaille_mayuko さん作の「即吊☆キャプチャー」も相当使われてますしね。(拙作のブックマークレットもご利用ありがとうございます)
そんななか、archive.today が大活躍する事件がありました。
先日の佐賀県知事選で落選した樋渡啓祐氏ですが、皆さんの知るとおり出馬に際してそれまで使っていたTwitterアカウント @hiwa1118 を削除して過去の発言をなかったことにしようとする動きがありました。(現在はアカウント復活の上、鍵アカに移項、ツイート削除)
@todotantan あれ全保存か。。。
— まゆこ(特殊つっこみ) (@lamaille_mayuko) 2014, 12月 3
こんなやり取りがありました。このときは、まゆこ女史のスーパーウルトラテクニックで、まだ削除されていなかったツイログがすべて魚拓として全保存され、発言の証拠として役立つことになりました。
- @hiwa1118 のtwilogからの全魚拓
そんなこんなで、あったらいいなと思っていた、Webサイトの全魚拓ツールですが、樋渡社中のオープンであらためてあったらいいなと思いましたので、スクリプトを書いてみましたのでご活用いただければと思います。
- まとめて魚拓 (zip)
動作環境
- Perl (CentOS 6 x86_64上のv.5.10.1にて作成)
- 必要モジュール
- HTTP::Request::Common
- HTTP::Cookies
- LWP::UserAgent
- HTML::TreeBuilder
簡単な使い方
(コマンドヘルプのようなもの)
Usage: allarchive [options]... url options: -quiet (-q) quiet mode -count (-c) show archived pages count -noarchive (-na) no archive mode for test -exist (-e) skip if already exist archived -pattern (-p) pattern match for archive ex) allarcive -p=[0-9]{8} http://example.org/diary/ archive http://example.org/diary/20150224 skip http://example.org/diary/20150224.html -search (-s) pattern match for search ex) allarcive -s=month[0-9]{2} http://example.org/ search http://example.org/month02 skip http://example.org/year2015
とりあえず、サイトを丸ごと魚拓する場合は
$ allarchive http://example.org/ [Enter]
でOK。
オプションの説明
- -q:応答メッセージを消す
- -c:応答メッセージを消すけど、魚拓ったページ数のみ表示する
- -na:ページ探索はするけど、実際には魚拓はしない。テスト用。
- -e:既に魚拓ずみのページは魚拓しない
- -p:魚拓するurlのパターンを正規表現で指定する
- -s:探索するurlのパターンを正規表現で指定する
たとえば、twilogを全保存したい時はこんな感じです。
$ allarchive -p=date-[0-9]{6} \ -s=month-[0-9]{4}\|date-[0-9]{6} \ http://twilog.org/(username)/
ということでWeb上の証拠保全にお役立てください。
・追記
uaを設定した方がいいのではというご意見をいただきましたので、uaを設定してzipを再アップしておりまます。
・追記2
-qオプションの処理が漏れていたところがあったので修正してます。あと、正規表現を渡すオプションで、外側の ( ) を不要にしました。(v.1.03になってます)
RT @todotantan: エントリー書いたよ! まとめて魚拓でhttp://t.co/JC9mWvZVlIを活用/海馬への境界線 https://t.co/n4uPV5pILe
RT @todotantan: エントリー書いたよ! まとめて魚拓でhttp://t.co/JC9mWvZVlIを活用/海馬への境界線 https://t.co/n4uPV5pILe
RT @todotantan: エントリー書いたよ! まとめて魚拓でhttp://t.co/JC9mWvZVlIを活用/海馬への境界線 https://t.co/n4uPV5pILe
まとめて魚拓でhttp://t.co/qyAKwLRQ9Zを活用 | 海馬への☆境界線 https://t.co/z1smcPctwj @todotantanさんから
RT @todotantan: エントリー書いたよ! まとめて魚拓でhttp://t.co/JC9mWvZVlIを活用/海馬への境界線 https://t.co/n4uPV5pILe
RT @todotantan: エントリー書いたよ! まとめて魚拓でhttp://t.co/JC9mWvZVlIを活用/海馬への境界線 https://t.co/n4uPV5pILe
RT @todotantan: エントリー書いたよ! まとめて魚拓でhttp://t.co/JC9mWvZVlIを活用/海馬への境界線 https://t.co/n4uPV5pILe
RT @todotantan: エントリー書いたよ! まとめて魚拓でhttp://t.co/JC9mWvZVlIを活用/海馬への境界線 https://t.co/n4uPV5pILe
まとめて魚拓でhttp://t.co/iANc8WiSVsを活用 | 海馬への☆境界線 https://t.co/aBv4ftlKOF @todotantanさんから
まとめて魚拓でhttp://t.co/2LnEFWyQNtを活用 | 海馬への☆境界線 https://t.co/d61atkRUdM @todotantanさんから
RT @lamaille_mayuko: まとめて魚拓でhttp://t.co/2LnEFWyQNtを活用 | 海馬への☆境界線 https://t.co/d61atkRUdM @todotantanさんから
まとめて魚拓でhttp://t.co/JHdQSVsf4Oを活用 | 海馬への☆境界線 https://t.co/vXTPCpwAFJ @todotantanさんから
RT @lamaille_mayuko: まとめて魚拓でhttp://t.co/2LnEFWyQNtを活用 | 海馬への☆境界線 https://t.co/d61atkRUdM @todotantanさんから
Browsing: まとめて魚拓でhttp://t.co/NU0cSPB94iを活用 | 海馬への☆境界線 https://t.co/rBRAym2Btn ボクもダウンロードしてソース鑑賞するかw
RT @seaki: Browsing: まとめて魚拓でhttp://t.co/NU0cSPB94iを活用 | 海馬への☆境界線 https://t.co/rBRAym2Btn ボクもダウンロードしてソース鑑賞するかw
RT @todotantan: エントリー書いたよ! まとめて魚拓でhttp://t.co/JC9mWvZVlIを活用/海馬への境界線 https://t.co/n4uPV5pILe
まとめて魚拓でarchivetodayを活用 – 泥縄お勉強メモ。「必要モジュール」はCPANのモジュールで、OS Xの.app形式にまとめるためにはインストール先を当該.appのContents/MacOS/にするとよさそう? https://t.co/eMbkNMzsow