したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

htmltodatサポートスレッド

1</b><font color=#FF0000>(L44UP/ps)</font><b>:2002/11/30(土) 01:48
QA・要望等受け付けるかもしれない(?)スレッドです。
作者にスキルがないのでできないことが多いかとは思います。

100名無しさん:2004/05/29(土) 22:17
>99
すみません。再度実行してみたら今度は出来ました。
お手数おかけしました。

101名無しさん:2004/06/15(火) 17:16
すみません。
こちらの過去ログ置き場のHTMLファイルを変換したいのですが、
1行が長すぎると出て変換出来ません。
http://umaibo.net/y/y01.htm

ページの先頭に【 2chtubo Ver.1.1.4.0 】と記載されてます。
これは、2ちゃんねるビューア用の正規表現とは別物が必要という事で
よろしいのでしょうか。

ご指導、よろしくお願いいたします。

102</b><font color=#FF0000>(L44UP/ps)</font><b>:2004/06/15(火) 19:15
>>101さん

> ページの先頭に【 2chtubo Ver.1.1.4.0 】と記載されてます。

のとおり、2chtubo 1.1.4.0を使って表示したhtmlを保存したもののようですね。
正規表現は以下のようなのでいけると思います。

m#<dt.*?>([0-9]+).+?(?:"mailto:(.+?)">)?<b>(.*?)</b>(?:</font>|</a>) *?:(.*?) *?<dd.*?>(.*?)<br><br>( *?<dt|</dd>)#mi

ベースにしたのは「read.cgi7.00?」で、ポイントは、DTやDDタグに<DT id=res0_1>
みたいなのがくっついているので、これにマッチさせるために<dt.*?>等としたところ
でしょうか。あとは半角スペースの位置・数の微修正程度。

103101:2004/06/16(水) 12:45
どうもありがとうございました。
よもや、こんなに早くお答えが頂けると思っていませんでした…

「ポイントは〜」以降の相違でレスの切り分けが出来なくなってた訳ですね。
これでやっと大量の過去ログを専用ブラウザで読む事が出来ます。
ほんとうに、ありがとうございました。

104名無しさん:2004/07/05(月) 20:12
dat落ちスレ閲覧用に、isp.2ch.net/viewerから落とし>>68の正規表現でdat化させる
方法を多用していましたが、先日これでは巧く行かないケースに遭遇しました。

<br><br><dt><a name=3>3</a> :<a href=mailto:sage><b>(´・ω・`)</b></font> :02/01/17 21:46 ID:qUrW9FUs<dd> (´・ω・`)
<br><br><dt><a name=266>266</a> :<font color=green><b>(=゚ω゚)ノ</b></font> :02/01/17 23:09 ID:BaagaU6g<dd> <a href="../258" >>>258</a><br>(=゚ω゚)ノ<br><br>
<br><br><dt><a name=266>266</a> :<font color=green><b>(=゚ω゚)ノ</b></font> :02/01/17 23:09 ID:BaagaU6g<dd> <a href="../258" >>>258</a><br>(=゚ω゚)ノ<br><br>
<br><br><dt>

この様にRes内の連続改行が<br> <br>では無く、<br><br> となってる個所があり、
ここで2Resが1Res結合されてしまいます。そこでRes部を最短一致の*?に変更し、

m#<DT><A.*?>([0-9]+).+?(?:<A HREF=mailto:(.+?)>)?<B>(.*?)</B>(?:</A>|</FONT>) :(.*?)<DD>(.*?)<BR><BR>#mi

とすることで取り敢えず解決しました。今のところ他の部分への副作用は特に見
当たりません。以上、ご報告まで…

105名無しさん:2004/07/09(金) 21:45
http://makimo.to/cgi-bin/search/search.cgi?q=|*�e�[�e)�d��&sf=2&andor=AND&G=�G�k�n�Q
↑の中にあるログを変換したいんですが、どの正規表現を選んでもダメなんです。
 解決方法ないですかね?教えてください。

106105:2004/07/09(金) 21:48
↓すいません。こっちでした。
http://makimo.to/cgi-bin/search/search.cgi?q=|*�e�[�e)�d��&sf=2&andor=AND&G=�G�k�n�Q

107</b><font color=#FF0000>(L44UP/ps)</font><b>:2004/07/10(土) 15:29
>>105さん
>>83ではだめですか?

108105:2004/07/11(日) 02:45
>>107さん
あっ、上に書いてあったんですね。
>>83でOKでした。どうもすいません。

109名無しさん:2004/08/14(土) 11:48
http://www.geocities.co.jp/Playtown-Spade/3115/believe_or.html

ここを「なんだっけ…」という正規表現でDAT化しようとすると
日付の色や文字の大きさが違ったり、T color=#8080ff size=2> New!と
余計なものが付いてきたりします。
他の正規表現ではエラーが出るか変換できても同じような表示になります。
正規表現はまるでわからないので申し訳ないのですが

110</b><font color=#FF0000>(L44UP/ps)</font><b>:2004/08/14(土) 20:42
>>109さん
「New!」とか入ってるとこを見ると、何かの2ch用ブラウザで表示させた
結果をHTML化したもののようですね。
とりあえず以下のような正規表現を書いてみました。

m#<DT><A.*?>([0-9]+).+?<B>(?:<A HREF="mailto:(.+?)">)?(.*?)(?:</A>)?</B></FONT>(?:<FONT .*?/FONT>)?(?:<FONT .*?/FONT>)(?:<FONT.*?>) (.*?)</FONT><DD>(.*)<BR><BR>#mi

但し、このHTMLにはスレタイの情報がどこにもないので、スレタイは
表示できません。
自力でdat内なり情報ファイルなりに書き足してください。

111109:2004/08/16(月) 00:01
レスありがとうございます。
正規表現の方はばっちりでした!
idxとSubject.txtをいじるのに苦労しましたがスレタイもOKでした。
ログの名前って数字じゃないとだめみたいですね

112109:2004/08/16(月) 00:01
レスありがとうございます。
正規表現の方はばっちりでした!
idxとSubject.txtをいじるのに苦労しましたがスレタイもOKでした。
ログの名前って数字じゃないとだめみたいですね

113109:2004/08/19(木) 15:58
http://like_a_god.at.infoseek.co.jp/MMR.html
今回はここなのですが、前回と似たような感じなので
>>110の正規表現でほぼうまくいきました。
ただ、メール欄になにも書かれていないレスが消えてしまうようです。
度々すみませんがまた教えていただけないでしょうか

114</b><font color=#FF0000>(L44UP/ps)</font><b>:2004/08/20(金) 18:11
>>113さん
>>109との違いはNew!があるかないかだけみたいですね。

>>110の正規表現中の(?:<FONT .*?/FONT>)の繰り返しの2個目は
New!にマッチさせるためのものだったんで、New!があってもなくても
いいよう、これに?を付けました。
あと日付欄の前の半角スペースがあったりなかったりしたのでこれも
?をつけました。
これは>>109にも>>113にもマッチするはずです。

m#<DT><A.*?>([0-9]+).+?<B>(?:<A HREF="mailto:(.+?)">)?(.*?)(?:</A>)?</B></FONT>(?:<FONT .*?/FONT>)?(?:<FONT .*?/FONT>)?(?:<FONT.*?>) ?(.*?)</FONT><DD>(.*)<BR><BR>#mi

115</b><font color=#FF0000>(L44UP/ps)</font><b>:2004/08/20(金) 18:13
あと、ついでと言っては何ですがバージョンアップしました。(0.1.5)
>>109のようなスレタイ(正確には<title>タグ)が含まれないHTMLを変換
したとき、プレビュー欄の表示がおかしくなっていました。
これは、プレビュー表示時にスレタイが見つからなければHTMLヘッダ情報
自体を出力していなかったのが原因だったので、これを修正しました。

但し、これは見た目だけの話で、いずれにせよスレタイの情報が取得でき
ないことに変わりはないので、>>110のとおり自力でdat内なり情報ファイル
なりに書き足す必要があります。

116109:2004/08/20(金) 23:08
どうもありがとうございました。
バージョンアップお疲れ様です

117名無しさん:2004/08/26(木) 00:45
めちゃくちゃ初心者な質問で恐縮ですが、
html化された過去ログ 例えば
http://curry.2ch.net/occult/kako/1007/10074/1007429618.html

を htmltodat の正規表現「sample」を利用してdatファイルにし、
それを dat2html を使用してhtml化すると、URLがダブってしまいます

34 名前:あなたのうしろに名無しさんが・・・ :01/12/05 17:36
http://piza2.2ch.net/test/read.cgi/occult/1007144685/l50&quot; target="_blank">http://piza2.2ch.net/test/read.cgi/occult/1007144685/l50
このまま二人が帰ってこなかったら、死ぬほど(比喩抜きで)後味の
悪い話が完成する。

のような感じで。
これは致し方ないことなのでしょうか。
もしくは正規表現に手を加えれば修正できるのでしょうか。
ご面倒でなければ、お教え頂ければと思います

118117:2004/08/26(木) 01:02
すみません、「アンカー削除」のチェックを外してdat化していました・・・
チェックを入れたままにしたところ、うまくいきました。
スレ汚しすみませんでした

119名無しさん:2004/08/30(月) 01:57
Internet Archiveの正規表現
m#<dt.*?>([0-9]+).+?(?:"mailto:(.+?)">)?<b>(.*?)</b>(?:</font>|</a>) *?:(.*?) *?<dd.*?>(.*?)<br><br>( *?<dt|</dd>)#mi

120名無しさん:2004/08/30(月) 12:56
今更だけどオフラインモードで終了して
htmltodatで生成されたDATを該当フォルダに移動
該当フォルダのsubject.txtに生成されたsubject.txtの内容を上書きすれば
自動的に.idxが生成されるね… これって標準仕様なのかな?

121名無しさん:2004/09/24(金) 21:09
いつもお世話になってます。
にくちゃんねるのログをDAT形式に変換する方法はないでしょうか?
>>84を読むとにくちゃんねるのhtml形式のログはDAT形式に変換できるようですが、
http://makimo.to/cgi-bin/dat2html/dat2html.cgi?http://that3.2ch.net/test/read.cgi/gline/1094036120/
などのように、まだhtml化されていないログをDAT形式に変換する方法はないでしょうか?
にくちゃんねるがDAT形式で保存しているのをユーザーにhtml形式で提供していますが、
にくちゃんねるからはhtml形式で保存されないログはDATでは提供されていないので、
どうしてもにくちゃんねるのhtml形式のログをDAT形式に変換したいのです。

122</b><font color=#FF0000>(L44UP/ps)</font><b>:2004/09/25(土) 22:59
>>121さん
にくちゃんねるのhtmlてcssとかJavascript使いまくりでhtmltodatで変換するのは
結構面倒ぽいので、にくちゃんねるの管理人さんに質問してみました。
すると、有難いことにDAT形式で取得するオプションを付けてくださいました。
ttp://makimo.to/cgi-bin/bbs/bbs.cgi

具体的には、URLの最後に&view=DATを付けてください。
>>121の例だと
http://makimo.to/cgi-bin/dat2html/dat2html.cgi?http://that3.2ch.net/test/read.cgi/gline/1094036120/&amp;view=DAT
みたいな感じです。

123名無しさん:2004/09/26(日) 17:55
>>122
出来ました。どうもありがとうございました。

124名無しさん:2004/10/11(月) 00:17
makimo.toから>>83のやり方でdatを取得してログフォルダに入れたらきちんと表示されなかったので、
>>83で取得したdatをdattohtmlでhtml化してそれをhtmltodatの「なんだっけ・・・」でdat化したら上手くいきました。
「DAT2HTML0.26」や「その2」だと変換できるんだけどレスの順序がバラバラになってしまいました。

125名無しさん:2004/10/11(月) 15:22
ん??? さっき漏れもmakimo.toからダウソしたが、

1) /2ch/ → /cgi-bin/html2dat/html2dat.cgi? でダウソ(ファイル末尾欠落は無視)
2) 拡張子修正 .html → .dat
3) html2datでsubject.txt作成

これだけでOkayダターョ

126名無しさん:2004/11/08(月) 11:49
ttp://fun.kz/
↑用の正規表現を既に考えた方いますか?

127名無しさん:2004/11/11(木) 17:26
>>126
そこは2chと構造が同じなのでhtmltodatを使わなくても、
2chブラウザに外部板として「fun.kz/board/」を追加すれば見れますよ。
boardの部分は適宜読み込みたい板のディレクトリ名に変更。
その中から見つからない場合は「fun.kz/board/dat/」から目的のdatを
直接落として後はdat2htmlするなり2chブラウザに入れるなりしてください。

128126じゃないけど:2004/11/12(金) 22:12
>>127
ありがとう。さっそく役に立ちました。

129126:2004/11/18(木) 22:25
>127
あ、ありがとうございました!

130名無しさん:2004/11/21(日) 00:25
http://aw0015.hp.infoseek.co.jp/2ch/gx-19.html
これがどうやっても正しく変換できません。その他となんだっけ・・・なら
変換は出来るのですが、番号が飛び飛びになってしまいます。

131名無しさん:2004/11/21(日) 00:29
すみません。バージョンアップしたらできるようになりました。
半年前のやつだったので、古かったようです。
スレ汚し申し訳ございませんでした。

132名無しさん:2004/12/04(土) 17:48
始めまして。
htmltodatを使わせて頂いております。
さて、下記のURLの変換がどうしてもうまく出来ません。
http://f33.aaa.livedoor.jp/~kagura/kako/1060675865.html

正規表現は、どのようにすれば宜しいのでしょうか。
お分かりの方居りましたら、ご教授下さいますようお願い致します。

133週刊少年マンガ板住人:2004/12/15(水) 17:42
2ちゃんねるミラー化計画からログを引っ張ってこれるように
UFT-8のデコードにも対応してもらいたいです。

>>132
m#<dt>.+</a>(\d+) 名前:.+<a href="mailto:(.*)"><b>(.*) ?</b>.+:(.+)<br><dd>(.*)<br><br>#mki

こんな感じ?名前欄のスペース有り無しでハマった…

134週刊少年マンガ板住人:2004/12/16(木) 16:16
誤字った…改めて

>>作者様へご要望です
2ちゃんねるミラー計画からログを引っ張ってこれるように
UFT-8のデコードにも対応してもらいたいです。
対応ご検討いただけると嬉しいです。

135 週刊少年マンガ板住人:2004/12/16(木) 16:24
うわぁ直ってない。
×UFT-8
○UTF-8
です。

136週刊少年マンガ板住人:2004/12/16(木) 17:11
この際なんで要望その2!

自分はperlしか知らないんですが、()の対応がうまく取れず拾いたいレコードを
取りこぼしてしまい、(多くはメール欄の有無で処理が大きく分ける必要のあるhtml)
結局前処理が必要になることがあるので、

・マッチング用の正規表現スペースを2つか3つにして or で拾い
・2つ目以降のスペースはそれぞれ空の時マッチング動作に加わらずスキップ
としていただけるとなお嬉しい…

この仕様だと旧パターンの互換性は一つ目の正規表現スペースだけを使う事で保証されます。

137</b><font color=#FF0000>(L44UP/ps)</font><b>:2004/12/18(土) 01:04
>>134-136さん
UTF-8対応は割と簡単そうなので気が向いたらそのうちやりたいと思います。
2ちゃんねるミラー計画とやらのURLを教えてください。
2つめのご要望はかなりの改造になってしまうのでちょっと難しいと思います。

138週刊少年マンガ板住人:2004/12/18(土) 03:57
対応、どうもありがとうございます。
うーん、フラグ持たせて評価関数ループ…じゃ難しいのかな。

2ちゃんねるミラー計画@fun.kz
http://fun.kz/

サイトはこちらです。

139132:2004/12/18(土) 11:11
>>133
どうも、ありがとうございました。
無事、変換することが出来ました。

140名無しさん:2004/12/19(日) 07:16
>週刊少年マンガ板住人
>>127

141週刊少年漫画板住人:2004/12/19(日) 13:00
>>140
あああああぁぁぁぁながあったらはいりたい。
申し訳ないっす。

142名無しさん:2004/12/28(火) 06:22
( )内で処理をすると
その部分が問答無用で5つのデータとして割り当てられていっちゃうのかと思ったら
(?: )って書くと回避できるんですね。
それに気付くまで数時間ぐらいずっといじってた・・・

143名無しさん:2005/01/24(月) 14:24
http://jbbs.livedoor.jp/movie/3205/storage/1089709230.html

livedoorしたらばのログなのですが、>>133の正規表現を用いても変換不可でした。
出来ましたら御対応して頂きたいのですが…

144</b><font color=#FF0000>(L44UP/ps)</font><b>:2005/01/24(月) 18:03
>>143さん
正規表現は>>63のでほぼいけると思うのですが
(以前と多少形式が変わったみたいで名前欄が若干変ですが)、
それ以前にこのhtmlはソースを全部表示できないですね。
(レス番109までしか表示できない)

htmlソースを直接取得して調べてみるとレス番110の途中に大量の
NULL文字(0x00)が混入・・・噂のjbbsのバグかな?
とりあえずGET直後にNULL文字を除去するよう改造してみたところ
全部表示できるようになりました。
今日か明日中にUPできると思います。

145</b><font color=#FF0000>(L44UP/ps)</font><b>:2005/01/24(月) 20:37
久しぶりにバージョンアップしました。(0.1.6)
・html中にNULL文字(0x00)が含まれるとそれ以降のhtmlが表示できなくなる
 不具合の対処として、GET直後にNULL文字を全て除去するよう修正。

お試しください。>>143さん
正規表現は>>63のよりも、サンプルで添付しているregexps.txtにある
「jbbs過去ログ」のほうが多少まともに変換できるようです。

146名無しさん:2005/01/25(火) 16:42
>>145
試してみた所、見事変換に成功しました。
作者様誠に有難う御座います

147<削除>:<削除>
<削除>

148名無しさん:2005/04/03(日) 14:38:32
てすと

149名無しさん:2005/04/05(火) 08:18:02
dat2htmlがバージョンアップしましたが、そのファイルは
どの正規表現を使ってもうまくdatに戻せませんでした。
正規表現はどのようにしたら良いでしょうか

150名無しさん:2005/04/05(火) 10:47:58
>>149
そういう時にはdat2htmlのバージョンと、
スレのURLを書いてもらえるとありがたいです。

今のままではアドバイスのしようがありません。

151名無しさん:2005/04/13(水) 15:47:34
>149に便乗して質問させていただきます。
今まで手持ちのログを試した経験では、dat2htmlがv0.3以上の場合
「一行が長すぎるか…」で変換に失敗するようになりました。

ちょうど今も、下記のログを変換しようとしていたところなのですが…
 http://2ch.pop.tc/log/05/04/10/1344/1112979897.html

使用されているdat2htmlのバージョンは0.32fpとのこと。
申し訳ありませんが、正しい正規表現をご教授していただけたら幸いです。
宜しくお願い致します…

152</b><font color=#FF0000>(L44UP/ps)</font><b>:2005/04/16(土) 03:26:59
DAT2HTMLのどのバージョンからかまではちゃんと調べてませんが、
確かに現時点の最新版Ver.0.32gでは出力されるHTMLの形式が微妙に
変化してますね。
具体的には、各レスの先頭が
・0.29の場合 :<dt><a name="R1">1</a> の形式
・0.32gの場合:<a name="R1"></a><dt>1 の形式
というように、タグの位置が入れ替わっています。

で、正規表現としては、「DAT2HTML0.26」の
m#<DT><A.*?>([0-9]+)〜 の <A.*?> の部分が不要になることに
なるので、これを削ればマッチするようになると思います。

m#<DT>([0-9]+).+?(?:<A HREF="mailto:(.+?)">)?<b>(.*?)</B>(?:</A>|</FONT>) :(.*?)<DD>(.*)<BR><BR>#mi

あと細かいところですが、>>151のHTMLでは各レスの<dd>タグの後、
レス本文の前後に、半角スペースが1個ずつ付加されています。
この半角スペースはDAT2HTMLのバージョンによって、あったりなかったり
オプションで有無を指定できたりもするみたいです。
上記正規表現で変換したdatにも半角スペースの有無はそのまま反映されます。
2ch用ブラウザでの見た目は多分変わらないはずなので気にしなくても
いいかもしれませんが、気になるようであれば正規表現の <DD> の後に
半角スペースを適宜足すなりしてみてください。

153151:2005/04/16(土) 07:57:38
>>152 作者様、早速のお答えどうもありがとうございます。
一応自分でも無い知恵を絞っていろいろ弄っていたのですが、とても対応できなかったので
早速>>152を試してみた所…

>m#<DT>([0-9]+).+?(?:<A HREF="mailto:(.+?)">)?<b>(.*?)</B>(?:</A>|</FONT>) :(.*?)<DD>(.*)<BR><BR>#mi

では
>1 名前:名無しさん[] 投稿日:2005/04/09(土) 02:04:57 ID:Eg5j8Arg
                                   ~~~
のように、秒数とIDの間に半角スペース2つ分空白が空きましたが、レス後半で答えられていた通り

>m#<DT>([0-9]+).+?(?:<A HREF="mailto:(.+?)">)?<b>(.*?)</B>(?:</A>|</FONT>) :(.*?)<DD >(.*)<BR><BR>#mi
と、半角スペース一つ入れる事で正常に変換できました。

DAT2HTML側のオプションで変化するとの事なので、両方とも登録する事にします。
自分一人なら早々に挫折するところでしたが、ご教授本当に有難うございました。
それでは…

154151:2005/04/16(土) 08:03:58
度々すみません。
↑の「秒数とID云々」の所ですが、IE上では2つ以上の半角スペースは無視されるんでしたね。

>1 名前:名無しさん[] 投稿日:2005/04/09(土) 02:04:57  ID:Eg5j8Arg

元の投稿では↑こんな感じになっていました。

155名無しさん:2005/04/17(日) 02:10:33
http://makimo.to/2ch/salami_hrhm/991/991002509.html

このスレをhtmltodatを使って2ch標準形式のdatに変換しようとしてるのですが、
まったく出来ませんでした。

最初からhtmltodatに入ってた正規表現は全部試してみたんですが、
ほとんどの正規表現で、「1行が長すぎます」と出てDatに変換できません。

これをDatに変換するには、どういう正規表現を追加すればいいんでしょうか?
よろしくお願いします。

156名無しさん:2005/04/17(日) 17:39:15
>>155
>>83を参照。

157155:2005/04/17(日) 22:39:16
>>156
出来ました。
ありがとうございました。

158名無しさん:2005/04/18(月) 01:22:44
makimo.to(にくちゃんねる)の過去ログだったら、IEで表示して
マウスポインタを画面右上に持っていくだけで「DAT」っていうのが
出てきますよ。(要JavaScript ON)
まあやってることは>>83と同じですがちょっとだけ楽ってことで。

159155:2005/04/18(月) 21:12:18
>>158
そうだったのか・・・
JavaScript切ってるので気づきませんでした。
ありがとうございました。

160名無しさん:2005/04/19(火) 20:37:26
2ちゃんねる検索(公式)でhtmlを取得したのですが
どの正規表現を使ってもうまくdatに戻せませんでした。
正規表現はどのようにしたら良いでしょうか
バージョンは0.1.6を使用しております。

サンプル用のhtmlはこちらです。
http://wiki.fdiary.net/2chZelda/?c=plugin;plugin=attach_download;p=sample;file_name=findhtml.zip

161</b><font color=#FF0000>(L44UP/ps)</font><b>:2005/04/20(水) 20:13:05
>>160さん
cssが同封されていたり、HTML中に
<META content="MSHTML 6.00.2900.2627" name=GENERATOR>
というのが入っているのを見ると、IEで表示したスレをメニューから
「名前をつけて保存」で保存したもののようですね。
この方法で保存した場合、IEが適当にHTMLを整形・加工してしまうので、
正規表現にヒットしにくくなってしまう場合があります。
なので、htmltodatとしては
・スレのURLを直打ちで取得
・スレへのリンクを右クリック→「対象をファイルに保存」で保存
・適当なダウンロードツール(iria,irvine等)を使う
のいずれかをお勧めします。

とりあえず以下のようなのを書いてみました。

m#<DT><A.*?>([0-9]+).+?(?:<A *HREF="mailto:(.+?)">)?<b>(.*?)</B>(?:</A>|</FONT>) *:(.*?) <DD>(.*)<BR><BR>( <DT>)#mi

一応サンプルの3つのHTMLにはマッチしましたが、上に書いた整形・加工の
影響でdat中に無駄な半角スペースがいくらか入ってしまいます。
(2ch用ブラウザでの見た目上は影響ないはずですが)

あと、これらのHTMLは、タイトルがスレタイではなく
「2ch検索: [dat:http://qb5.2ch.net/test/read.cgi/operate/1112336659/]」
のようになっているので、dat変換後に正しいスレタイに変更してください。
(datの1行目の一番最後をテキストエディタで書き換える)
それから、ghard板のHTMLだけなぜかcharsetがEUCですね。

162</b><font color=#FF0000>(L44UP/ps)</font><b>:2005/04/20(水) 20:42:48
>>161の正規表現をそのままコピペすると<DD>と<DT>の前の半角スペースが
それぞれ1個だけになっちゃいますが、実際には2個です。
(ブラウザが2個以上の半角スペースは省略してしまうため)

163160:2005/04/20(水) 22:59:55
(L44UP/ps)さん、
迅速な対応をして頂き本当にありがとうございます

最初は、自分の力で正規表現を書こうとしていたのですが
DATについての知識もない状態ではどこから手をつけていいか
わからず、恥ずかしながら相談しました。

早速、>>161をの正規表現の式を>>162に書いてある修正を加え
HTMLのファイル名を短くして、同名のフォルダとの関連づけを絶ったうえで
変換してみたところ、無事dat化することができました。

>それから、ghard板のHTMLだけなぜかcharsetがEUCですね。
1つだけEUCになっているのはこれを初めに保存したからです。
ソースを見て文字化けしているのが気になったので
後の2つはシフトJISを選択して保存しました。他に意味はないです。

それと、今回のHTMLは、IEで表示したスレッドを「名前をつけて保存」の
「Webページ、完全」で保存したものでした。>>161での推測通りです。

あと、取得方法の件ですが
2ちゃんねる検索では、ポイントを支払ってhtmlを取得するシステムなので
直接URLを入力しても無理なようです。
なので変換結果に問題があるのかもしれないのですが
今後も同じ保存方法をとることになりそうです。
まあ、今は読めれば問題ないのでこれで満足しています。

今回の相談ではお手数をおかけしました。本当に感謝しています。

164名無しさん:2005/04/25(月) 11:57:48
同じ保管庫にあったログの中で2ファイルが
全然ヒットしないので正規表現が正しくないようです。
のエラーメッセージがでました。
どの正規表現でもできないようなのですがどうすればいいですか?
教えてください
http://www.armd.ne.jp/lemona/logdata15.html

165164:2005/04/25(月) 11:58:41
書き忘れました。
もうひとつは
http://www.armd.ne.jp/lemona/logdata16.html です

166名無しさん:2005/04/25(月) 20:45:27
メインPCが故障して修理に出してしまったのでトリップがありませんが作者です。

まず>>164に関してですが・・・
これはどういう方法でHTML化したのでしょうね?
<DT>タグや<DD>タグがないのでレスの切り分けようがありません。
一応HTMLの体裁をしていますが実質プレーンテキストと変わりません。
かなり無理やりですが以下のようなのを書いてみました。

m#([0-9]+)() 名前:(.+) 投稿日:(.+?) <BR>(.*)<BR><BR> ([0-9]+ 名前:| <HR>)#mi

ところが変換してみるとdatの行数とスレの最終レス番が全然合わない・・・
と思ったらスレ途中に透明あぼーんがいっぱい入ってますね。
htmltodatには透明あぼーんを補う機能など無いのでその分レス番がずれて
しまいます。(dat化の結果にテキストエディタで透明にされた分だけ
改行を足せばレス番は合うかもしれませんが・・・)
というわけではなはだ適当な結果しか出せませんでした。

167名無しさん:2005/04/25(月) 22:55:44
次に>>165に関してですが・・・
こちらはぱっと見、まともなHTMLに見えたので簡単かなと思ったのですが
途中から名前欄「ミ,,゚Д゚ミ 保管時に削除しますた誉」の荒らし?が・・・
こいつの名前欄の前後には<B></B>タグがついてないので、仕方なく
(:?<B>)?などとする羽目に・・・すると正規表現があいまいになりすぎた
ためか変換が滅茶苦茶遅いです。結局、テキストエディタで

<B>ミ,,゚Д゚ミ 保管時に削除しますた誉</B>

のように前後に<B>タグをつけて一括変換してからのほうが手っ取り早かったです。
その上での正規表現ですが

m#<DT>([0-9]+).+?(?:<A HREF="mailto:(.+)">)?<B>(.*)</B>(?:</A>|</FONT>)?:(.*?) *<DD>(.*)(<DT>|</DD>)#mi

168名無しさん:2005/04/26(火) 14:34:47
お忙しいところ失礼します。
DAT2HTML 0.30ep なんですが、どうでしょうか。


http://fire.kakiko.com/gaidenkuma/1.html

なんだっけ…ならほぼ変換されますが、コテハンのIDと
投稿日の日時が変なようです。

よろしくおねがいします。

169名無しさん:2005/04/26(火) 19:06:29
>>168さん
HTML中に
<META content="MSHTML 6.00.2800.1491" name=GENERATOR>
というのがあるのを見ると、DAT2HTMLで変換した結果をいったんIEで表示し
それをメニューから「名前を付けて保存」で保存したもののようですね。
この方法で保存した場合(以下略。>>161参照)

とりあえず、正規表現「DAT2HTML0.26」をベースにしたのですが、名前欄に
一致させるための「<b>(.*?)</B>」の部分が、トリップつきの名前だと
トリップの前の</B>にマッチしてしまっておかしくなるので、最長一致の
「<b>(.*)</B>」に変えました。(これは他の正規表現にも同じ問題があるかも・・・)

あと、投稿日の前の「:」の前の半角スペースがあったり無かったり数が
まちまちだったりしたので(これはIEの整形・加工の影響)、ここに「*」
を加えました。
結果は以下です。

m#<DT><A.*?>([0-9]+).+?(?:<A HREF="mailto:(.+?)">)?<b>(.*)</B>(?:</A>|</FONT>) *:(.*?)<DD>(.*)<BR><BR>#mi

170168:2005/04/27(水) 08:45:21
>>169
お手数かけました。

171164:2005/04/28(木) 09:30:21
>166
>167
ありがとうございます
自分もソースをもう一度よく見たら他のと全く違う形式に気づきました。
試してみて、ダメだったら別のHTMLミラーを探して見ます。

172163:2005/04/29(金) 21:56:41
ブラウザをFirefox/1.0.3に変更したら次のようなHTMLが保存できるようになりました。
http://wiki.fdiary.net/2chZelda/?c=plugin;plugin=attach_download;p=sample;file_name=findhtm2.zip

なので今後は、
1 Firefoxを使って2ch検索でhtmlを表示させる
2 「名前を付けてページを保存」の「htmlのみ」で保存。ファイル名はスレ固有の番号。
3 htmltodatでHTMLを呼び出し、EUC→SJISボタンを押す
4 正規表現は「DAT2HTML0.26」を選択し変換。変換が終わったらdatを保存。
5 datの1行目に編集を加え正しいスレタイに変更
という手順で使おうかと思っています。

以上、報告でした。

173</b><font color=#FF0000>(L44UP/ps)</font><b>:2005/05/07(土) 01:43:47
DAT2HTMLについて、ちょっとサポート掲示板をのぞいてきたのですが、
>>152でのタグ位置の変化は、どうやらVer.0.32からのバグ扱いされている
模様です。
最近のバージョン(といってもバージョン番号は正確にはわからないのですが)
では修正されているようですのでご注意ください。
(おそらく正規表現「DAT2HTML0.26」がそのまま使えるとは思うのですが)

174143:2005/05/27(金) 13:28:36
再び失礼致します。
http://jbbs.livedoor.jp/movie/3205/storage/1090591778.html

上記スレッドなのですが、投稿日欄やトリップ欄が壊れた状態で変換されてしまいます。
他の正規表現も試してみましたが、今度はレス番が1つズレるという結果に成りました。
何とか、正常に変換される事は可能なのでしょうか?

175名無しさん:2005/05/27(金) 18:30:43
>>174
EUC->SJISにした後>>63の正規表現で変換できましたよ。
もう一度ログを落とし直してみるとか。

176 ◆/vmukiyuzw:2005/05/27(金) 18:58:50
>>174さん
正規表現「jbbs過去ログ」で一見問題なく変換できた・・・と思ったら
元スレがレス番170まであるのにdatは168行しか変換できません。
調べてみると、元スレのレス番15と19が飛んでいます。

>>166でも書きましたが、htmltodatには透明あぼーんを補う機能など
無いので、その分レス番がずれてしまいます。
対処としては、datに無理やり透明あぼーんを表現する行を突っ込む位しか
思いつきません。
変換後のdatをテキストエディタで開いて、15行目と19行目に

透明あぼーん<>透明あぼーん<>透明あぼーん<>透明あぼーん<>

とか入れてみるとかどうでしょう。

177 ◆/vmukiyuzw:2005/05/27(金) 19:03:06
あれ?トリップの仕様が2chと一緒になったのかな?
今までここでは(L44UP/ps)と名乗っていた作者です。

178175:2005/05/27(金) 19:06:11
確認しなおしたら作者さんの言う通りになってた・・・早とちりすみません。

179143:2005/05/30(月) 17:54:20
>>176
試してみました所、正常に閲覧する事が可能に成りました。
誠に有難う御座います

180名無しさん:2005/07/15(金) 02:32:36
ぜろちゃんねるの過去ログは変換出来ますでしょうか?
一覧やこのスレに出ている例は全て試しましたが、出来ませんでした。
変換したいのは、下のhtmlです。

http://0ch.mine.nu/jikken/kako/104/1043234114.html
http://0ch.mine.nu/jikken/kako/104/1049781744.html

181180:2005/07/15(金) 05:04:16
すみません。自己解決しました。
同じディレクトリにあるdatファイルを取得すれば良いだけでした。
書き込んだついでに一言。
htmltodatには昔からお世話になっております。ありがとうございます。

182名無しさん:2005/09/05(月) 18:30:31
どうもうまくいかないので、宜しければ正規表現を考えて頂けないでしょうか。

こちらです。
http://snapshot.publog.net/dat.php?url=http://ex11.2ch.net/test/read.cgi/news4vip/1119660972/

ところで、上と同じスレですが
http://snapshot.publog.net/html/news4vip/2005/06/25/095612.html
は同じ型(?)なのでしょうか。

183 ◆/vmukiyuzw:2005/09/05(月) 20:41:10
>>182さん
若干余分なものがくっついてますが基本的には「read.cgi7.00?」と似た形をしているので
これをベースに試したところ、日時・ID欄の前のコロンの全角半角が違うだけだったので、
これを変えるだけで基本的には変換できました。

m#<dt>([0-9]+).+?(?:"mailto:(.+?)">)?<b>(.*?)</b>(?:</font>|</a>) :(.*?)<dd> ?(.*?)<br><br>(<dt>|</dl>)#mi

但し2点ほど考慮事項が。
1.メール欄に mailto:.sage のように無駄な(?)ドットが必ず一個ついてくるようです。
 これを忠実に再現するなら上の正規表現のままでいいですが、不要だと思われるならば
 mailto:\.? とでもすれば取り除けます。
2.htmltodatではスレタイの情報は<title>タグから取得しているのですが、このスレは<title>タグが
 本来のスレタイではなく 「http://ex11.2ch.net/test/read.cgi/news4vip/1119660972/
 みたいにURLになっちゃっているので、本来のスレタイに打ちかえる必要があります。

> http://snapshot.publog.net/html/news4vip/2005/06/25/095612.html
> は同じ型(?)なのでしょうか。

ソースの見た目は特に違いはなさそうでしたし同じ正規表現で変換できましたけど。

184182:2005/09/06(火) 13:49:49
即答ありがとうございます。datに変換出来ました。
これで、snapshotにしか残っていないスレッドもdat化出来ます。
ありがとうございました。

185名無しさん:2005/09/06(火) 17:04:55
 a

186名無しさん:2005/09/07(水) 17:17:51
afgeae test

187182:2005/09/09(金) 20:43:52
すみません、またお願い出来ませんでしょうか。

http://p2.chbox.jp/read.php?url=http://live20.2ch.net/test/read.cgi/liveanb/1126241150

↑これなのですが、>>182のようなURLでは取り出せないようなのです。
ソースを見てみると、何とも難しそうなのですが、出来ますでしょうか・・・。

188 ◆/vmukiyuzw:2005/09/10(土) 13:52:59
>>187さん
これはp2によるHTMLですかね。
Javascript等のガラガラが入りまくりでhtmltodatとしては非常に
苦手なパターンです。

まず、htmltodatの仕様からくる致命的な不都合が2点。

1.htmltodatでは日時・ID欄は一つのものとしてとらえているので
 日時とIDの間に挟まっているものは取り除けません。

2.htmltodatではメール欄は名前欄より前に「mailto:〜」の形式で
 書かれていることを前提にしているので、このHTMLのように
 名前欄の後ろにしかもプレーンテキストでポンと置かれても
 それがメール欄である事を識別するすべがありません。
 (しかもこの形だと日付欄と区別するのも難しい)

とはいえ、名前欄と本文だけはそれなりに取り出せたので一応
書いておきます。後は申し訳ないですがエディタ等で前処理なり
後処理なりして整形してください。

m#<dt.*?>([0-9]+).+?()<b>(.*) </b>.*?:(.*?)</dt>.*<dd> (.*)<br><br></dd>#mi

あと、レス番が256から始まってますがこれをdat変換してもしょうがないので
「全部」のURLで変換してください。
それからスレタイにも余分なものが付いてますのでご注意を。

189 ◆/vmukiyuzw:2005/09/10(土) 13:59:37
あと、技術的な解決法ではありませんが、サイト管理者さんに
生datでの提供をお願いしてみるというのはどうですかね。
(にくちゃんねるとかは確かこれによりdatの提供もされるように
なったという経緯があったはず)

・・・とふと思ったけどサイトを見に行ってみると既に要望されて
いる方がいらっしゃるようですね。
(しかもスルーされてる模様 orz)

190182:2005/09/10(土) 14:52:39
>>188-189
ありがとうございます!これで充分です。
>>182のようなURLで取り出せないものは、こちらのほうを使わせて頂きます。

191名無しさん:2005/09/10(土) 23:19:50
http://sapporo.cool.ne.jp/morikake/morikake3.html
このhtmlの変換をしたいと考えています。
何だっけ…が一番近いようなのですが、日付のタグやIDのリンクが悪さをするようです。
ログを置き換えて処理しようとしたのですが、IDのリンクがうまく処理できず、煮詰まってしまいました。
ご教授お願いします。

192 ◆/vmukiyuzw:2005/09/11(日) 13:55:42
>>191さん
これも>>189の1と同じ問題で、日時とIDの間に挟まっているアンカータグを
取り除く事ができません。申し訳ないですがエディタ等で前処理なり
後処理なりして整形してください。

m#<DT><A.*?>([0-9]+).+?<B>(?:<A HREF="mailto:(.+?)">)?(.*?)(?:</A>)?</B></FONT><FONT.*?>.*?</FONT><FONT.*?>(.*?)(?:</A>)?</FONT><DD>(.*)<BR><BR>#mi

アンカータグが残っている影響でプレビュー欄が変になりますがご容赦ください。
あとこのHTMLにはスレタイがないのでご注意を。

193名無しさん:2005/09/11(日) 14:36:12
>>189
やあ、(´・ω・`)
オフラインでも保存されたスレが見たいから
dat提供を頼んでみたけどスルーされたのさ 。

多分、182の人はそんな俺の書き込みを見て何か思ったエロイ人。

194 ◆/vmukiyuzw:2005/09/11(日) 18:44:08
>>192
> これも>>189の1と同じ問題で、
>>188の1の誤りでした。失礼。

195191:2005/09/11(日) 20:15:31
>192
どうもありがとうございました。タイトルは分かっているのでなんとかしてみます。

196182:2005/09/16(金) 19:51:41
snapshot(というか「p2.chbox.jp〜」)のスレを
htmltodatで一括変換してみたところ(タイトルが違うのは承知の上で)
8スレ中 dat変換に成功したのは4スレのみでした。。
・・何故なのでしょう?

対象スレ:
(1)http://p2.chbox.jp/read.php?url=http://news19.2ch.net/test/read.cgi/newsplus/1126372408/all
(2)http://p2.chbox.jp/read.php?url=http://news19.2ch.net/test/read.cgi/newsplus/1126372282/all
(3)http://p2.chbox.jp/read.php?url=http://news19.2ch.net/test/read.cgi/newsplus/1126368731/all
(4)http://p2.chbox.jp/read.php?url=http://news19.2ch.net/test/read.cgi/newsplus/1126372069/all
(5)http://p2.chbox.jp/read.php?url=http://news19.2ch.net/test/read.cgi/newsplus/1126378029/all
(6)http://p2.chbox.jp/read.php?url=http://news19.2ch.net/test/read.cgi/newsplus/1126166580/all
(7)http://p2.chbox.jp/read.php?url=http://news19.2ch.net/test/read.cgi/newsplus/1126363579/all
(8)http://p2.chbox.jp/read.php?url=http://news19.2ch.net/test/read.cgi/news/1126373580/all

このうち、dat変換に成功したのは(1)(2)(6)(8)でした。

197 ◆/vmukiyuzw:2005/09/16(金) 21:53:49
>>196さん
>>188でも書きましたが、p2によるHTMLにはJavascript等のガラガラ(※注:htmltodatから
みると邪魔でしかない要素を勝手にこう呼んでいます)が大量に含まれています。
変換できないHTMLは、このガラガラがあまりに多すぎて、まさにエラーメッセージどおり
「一行が長すぎる」のエラーに引っかかってしまっている状態です。
で、内部バッファのサイズ制限を多少ゆるくして回避できないか試してみましたが、今度は
BREGEXP.DLLの制限(readmeにちょっと書いてますがマッチする文字列長が長すぎると
fatal errorを起こすというもの。直してくださいよBabaさん!てこんなとこで書いても意味
ないですが)に引っかかってしまう始末。

結局のところ、前処理で不要なものを取り除いてしまう以外回避策はないかと思います。
ご自分の掲示板でも既に気づかれていたようですが、<dd id= で始まる行が一番のガン
なので、こいつらを全部取っ払っちゃってください。単に空行に変換するだけでも充分です。

これで(1)〜(8)まで全てエラーが出ないことを確認しましたが、一点だけ問題がありました。
>>188で書いた正規表現ですが、<dd>タグの後に一個半角スペースを付けていたのですが、
あぼーんのあったレスにはこの半角スペースが存在しないためマッチしませんでした。
なので、?を付けて<dd> ? として以下のように修正します。

m#<dt.*?>([0-9]+).+?()<b>(.*) </b>.*?:(.*?)</dt>.*<dd> ?(.*)<br><br></dd>#mi

198182:2005/09/19(月) 20:13:30
御返事遅くなり申し訳ありません。
不具合を取り除く正規表現がなかなか厄介でしたが(ヘタレなので)、何とかなりました。

snapshotのスレも、何とかなりそうです。ありがとうございました。

199名無しさん:2005/09/20(火) 23:24:03
韓国人と仕事で困った事・過去ログ倉庫一覧
http://cool.kakiko.com/korea00/log.html
こちらのログの変換をしようとしたら、
「1行が長すぎるか、正規表現が正しくないようです。」
とでて変換できません。
他力本願で申し訳ありませんが、対応はできないでしょうか?


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板