テレワークならECナビ Yahoo 楽天
LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル
■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 最新50
メモ4
- 574 :名無しさん@停滞中 ★:10/07/10 13:30:01 ID:???
- メモ
だっとにちゃん(http://dat2ch.net/)のdat化について
URL例
http://society6.dat2ch.net/test/read.cgi/gline/1165245437/
正規表現(長すぎるので2行に分けてます)
m#<dt id="thread_dt_\d+"> <span.+?>([0-9]+)</span> : (?:<font.+?>|<a href="mai
lto:(.+?)">)<b>(.+?)</b>(?:</a>|</font>):(.+?)</span></dt><dd .+?>(.+?)</dd></div>#mik
前処理
s#\n\t\t.+?(?=\n)##igk
s#\n {2}.+?(?=\n)##igk
s#\n</?(?:meta|link|span).+?(?=\n)##igk
s#<script[\s\S]+?/script>##igk
s#<title.+?/title>##ik
s#<span class="thread_title">(.+?)</span>#<title>$1</title>#ik
s#<dt>.+?/dt>##igk
s#<dd>.+?/dd>##igk
s#<span class="disp_id.+?>(ID:.+?)</span>#$1#igk
s#<a id="ancvar_.+?>(.+?)</a>#$1#igk
見た目はシンプルに見えるけどやたらに込み入ったhtmlで、dat化も時間がかかるです(特に前処理)
URL例の場合、1.1メガで13616行あるhtmlのうち本文が始まるのが1523行目からなので
普通にやっていると、htmltodat(というかBregExp.dll)がそこまで到達する前にfatal errorになってしまうです。
で、本文に入ってもポップアップするレスアンカー毎に内容を埋め込んであるのでそれも消さないといけなくて
前処理でやたらに時間がかかってしまうのはそういう理由です。
非力なマシンだともしかしたら固まってしまうかブルースクリーンになってしまうかもしれない。
今現在で、全板クロール開始されてから一月経っておられないとの事ですが
生datも閲覧させて頂けたらとても嬉しいです(私が)
自分が見落としてるだけで、何処かにあるのでしょうか。
500KB
続きを読む
掲示板に戻る 全部 前100 次100 最新50