
Ubuntu日本語フォーラム

ログインしていません。
検索すると特別にアプリケーションがある訳でなく、wget コマンドで行うと言うことのようです。
そこで
wget -r -e robots=off -p -np http:~.jp/ -b
のようにすると、記事が 500余に対し 1000 近いファイルが出力されます。
ブログではページが ?entry=, ?cat=, ?month=, ?day=, ?page= などがあります。
更に ?page=3&cat=2 といったようなページも存在するのですが、この二段階になったものは悉くエラー出力になります。
この「?付き」の出力をしたい場合はどのようにするとよいでしょうか?
或いは ?day= ?entry= ?page= を除外指定することはできるでしょうか?
オフライン
内容を理解していないので違ったらすみません、単純な解糖としては
オプション
指定[-A]
拒否[-R]
これは拡張子だけでなくファイル名にも使えないでしょうか。
wget -m -p -L -R 'ファイル名' http://www~~~
正規表現も使えるので「?day=」などは「\?day\=」指定、除外したい?day=ってファイル名じゃなかったらゴメンなさい。
「=」の後に何か文字が続くのでしたら「\?day\=*」
$ sudo wget -m -p -L -R '\?entry\=*,\?cat\=*,\?month\=*,\?day\=*,\?page\=*' http://www~~~
オフライン
hir0 さん、ありがとうございます。
出力が index.html?month=201005 と言ったパターンなので、-R '\index.html?month\=* でトライしたところ、見事に成功しました。
ところが出力されたファイルをブラウザに表示させると、「xml パースエラー」が出てきます。 例えば、youtube の埋め込みタグや amazon などの表示で url 中に「=」が一個なら問題ないので、後続する「&」以降を削除するなどで対応しています。
しかし例えば、カテゴリーを選択するとたいがい数ページに亘るのですが、この時url が /?page=3&cid=2 (index.html?page=3&cid=2)となり、上記の問題同様エラー扱いになります。
これを解決する方策はありますでしょうか?
或いはブログ・サーバーの仕様ということでどうにもならないものなのでしょうか?
オフライン