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

htmltodatサポートスレッド

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

925 919 :2015/07/22(水) 02:46:31
>>920
遅くなりましたがありがとうございます
無事解決しました

926 ◆/vmukiyuzw :2015/09/09(水) 00:49:00
また2ch.netのread.cgiで読めない不具合が起きているようなので
>>884のびんたんからの変換を修正してみました。
(自分にできそうなのはそんくらいしかないので・・・)
最近あちこちの板で見かける、名前欄にいろんな送信元の情報?を含んで
表示されるケースに対処できてなかったので修正しました。


コメント:
# びんたんの読み込みをdatに変換してみる ver.2

URLの変換:
s`http://(.+?\.2ch\.net)/test/read\.cgi/(.+?)/(\d+)/?.*`http://bintan.ula.cc/test/read.cgi/$1/$2/$3`

前処理:
# スレタイ置換
s`<title>.*?</title>``
s`<div class="topic_name_inner_left">\s*?<p>(.*?)</p>`<title>$1</title>`i
# レス1だけ形式が違うので他と合わせる。名前欄の内容にspanタグが含まれることがあるのでそれとぶつからないよう注意
s`<span\ id="read_one_body(?:.|\s)*?<span>\s:\s(.*?)</span>\s*</div>\s*</div>`<a\ class="respop">1</a>.<b>$1</b>`i
s`<div\ style="clear:both;"\ class="topic_date">(.*?)</div>(?:.|\s)*?(<div\ class="honbun">.*?</div>)`$2<font>$1</font>`i

アンカー削除:
false

変換結果式:
$3<>$2<>$5<>$4<>

後処理:
s`<a\ href=.*?>``ig
s`</a>``ig

正規表現:
m`<a\ class="respop".*?>
(\d+) # レス番
</a>.+?<b>
() # メール欄情報は存在しないためダミーに
(.*?)</b> # 名前欄 </b>を複数含む場合があるため単に最短一致ではなく後続<div class="honbun">のみマッチさせる
\s*?<div\ class="honbun">
(.*?) # レス本文
</div>.*?<font.*?>
(.*?) # 投稿日 一般的なhtmlと違いレスの後ろに付いている(よって変換結果式で引っくり返しが必要)
</font>`mikx

927 ◆/vmukiyuzw :2015/09/10(木) 22:54:02
>>926
これで変換したdatを専ブラで読んでみるとなぜかレスアンカーがリンクにならない・・・
調べてみると、例えば>>1のようなレスアンカーは本来html上では&gt;&gt;1と表現されるべきものが、
びんたんではそのまま>>1と出力されているのがまずいみたいです。
(むか〜し昔read.cgiでもあった事象です。>>72-78あたり)

とりあえずの対処として、後処理の最後に以下を足して下さい。


s`>>`&gt;&gt;`ig

928 名無しさん :2015/09/17(木) 14:19:08
>>927
>>924から組み立てているのかどうかは判らないが
IEコンポーネントを使ってるブラウザDountRAPTは自動的にUAを初期化してる
ソースも公開されてるので興味があれば調べてみては?

929 ◆/vmukiyuzw :2015/09/18(金) 01:05:32
>>924さん>>928さん
アドバイスありがとうございます。
技術的にどうすればいいかはある程度イメージはあるんですけど
あんまりやる気は起きないってのが正直なとこです。

前から書いてますがUAを自力で変える手段は提供してますし
それを使えないような方はそもそもこのソフトを使えないんじゃないかと思います。
こういう言い方はちょっとどうかとも思いますが
もともと万人が使えることを目指したものでもないんで。

930 ◆/vmukiyuzw :2015/09/22(火) 00:31:49
びんたんが吐くhtmlが微妙に仕様変更されてて
>>926-927 ではうまく変換できなくなっているようなので修正しました。


コメント:
# びんたんの読み込みをdatに変換してみる ver.3

URLの変換:
s`http://(.+?\.2ch\.net)/test/read\.cgi/(.+?)/(\d+)/?.*`http://bintan.ula.cc/test/read.cgi/$1/$2/$3`

前処理:
# スレタイ置換
s`<title>.*?</title>``
s`<div class="topic_name_inner_left">\s*?<p>(.*?)</p>`<title>$1</title>`i
# レス1だけ形式が違うので他と合わせる。名前欄の内容にspanタグが含まれることがあるのでそれとぶつからないよう注意
s`(<a\ class="respop".*?>1</a>\ :\ )(.*?)\ :\ `$1<b>$2</b>`i
s`<div\ style="clear:both;"\ class="topic_date">(.*?)</div>(?:.|\s)*?(<div\ class="honbun">.*?</div>)`$2<font>$1</font>`i

アンカー削除:
false

変換結果式:
$3<>$2<>$5<>$4<>

後処理:
s`<a\ href=.*?>``ig
s`</a>``ig
s`>>`&gt;&gt;`ig

正規表現:
m`<a\ class="respop".*?>
(\d+) # レス番
</a>.+?<b>
() # メール欄情報は存在しないためダミーに
(.*)</b> # 名前欄 </b>を複数含む場合があるため単に最短一致ではなく後続<div class="honbun">のみマッチさせる
.*?<div\ class="honbun">
(.*?) # レス本文
</div>.*?<font.*?>
(.*?) # 投稿日 一般的なhtmlと違いレスの後ろに付いている(よって変換結果式で引っくり返しが必要)
</font>`mikx

931 名無しさん :2015/12/09(水) 00:05:11
すみません
質問させてください

http://hanabi.2ch.net/test/read.cgi/anichara2/1447210834/
このスレが12/2の438までは上手く変換できてたのですが
それ以降設定を弄ってないのに「一行が長すぎるか正規表現が正しくないようです」とでるようになりました
HTMLは取得できています
正規表現は12/2以前もそれ以降も0.26その2を使っています
自分が見ている他のスレは同じ仕様(0.26その2)で変換できていてこのスレだけ引っかかりました

どこを直したらいいでしょうか

http://2chdays.net/anichara2/dat/1447210834.dat
これで583までは取得できたのですが残りができませんでした

932 名無しさん :2015/12/09(水) 00:11:42
追記
どうやらhanabi.2ch.netだけおかしくなるみたいです

933 ◆/vmukiyuzw :2015/12/09(水) 00:47:05
>>931さん
えっと、このスレでは話題に上がってなかったんでスルーしてたのですが
2chの一部のサーバでread.cgiの仕様変更があって返ってくるhtmlの形式が
ガラッと変わっています。
なので従来の正規表現等では変換できないケースが出ています。

で、次レスで一応対応したつもりの正規表現等を紹介しておきます。
ただ、それ以前に若干の疑問が。

正規表現「0.26その2」とは「DAT2HTML0.26その2」のことですよね?
それはそもそも2chのread.cgiに対応しているものではないはずなんですが。
その時点でなんか勘違いがあるんではないかと不安になります。

934 ◆/vmukiyuzw :2015/12/09(水) 00:55:19
read.cgi 06系対応版。
05系と統一できないか考えてたのですがちょっと難しそうなので
とりあえずそのまま出します。使う側で使い分けが必要なのは
申し訳ないです。


コメント:
# 2chのread.cgiからの出力を変換-20151208
# 2chのcgi仕様変更(06系)に対応
# まだ今後の推移が読めないので様子見バージョン

URLの変換:
s#http://(.+?)/test/read\.cgi/(.+?)/(\d+)/?.*#http://$1/test/read.cgi/$2/$3/#

アンカー削除:
false

後処理:
# BE周りの処置
s#<img src="http://(img\.2ch\.net/.+?)">#sssp://$1#igk
s#</div><div class="be .*?><a href="http://be\.2ch\.net/user/(\d+).*?>\?(.*?)</a># BE:$1-$2#ig
# jump.2chは無駄なので取っ払う
s#<a href="http://jump\.2ch\.net.*?>(.*?)</a>#$1#igk
# フルパスを相対パスに変換(やらなくても問題ないかもしれないが一応昔の仕様に合わせる)
s#<a href="http://.*?\.2ch\.net/(test/read\.cgi/.*?/\d+/\d+)#<a href="../$1#igk
s#<a href="http.*?>(.*?)</a>#$1#igk
# お絵かき機能のimgタグを除去
s#<img src="(.*?)">#$1#igk

正規表現:
m#<div\ class="number">([0-9]+).+?<div\ class="name"><b>(?:<a\ href="mailto:(.*?)">)?(.*?)(?:</a>)?</b></div><div\ class="date">(.*?)</div><div\ class="message">(.*?)</div>#mi

935 名無しさん :2015/12/09(水) 15:11:45
横からですがありがとうござます。
やっと自作PC板のdatが取得できますた・・・

936 ◆/vmukiyuzw :2015/12/09(水) 22:56:18
えーと、従来のread.cgiも変更されてるので対応しておかないといけませんね。

元々正規表現「read.cgi7.00?」の発展形としてやってきたものなんですが
現在のread.cgiのバージョンは 05.02.02だって?
うーん、なんか巻戻ってるけどあまり気にしないことにしよう・・・
とりあえず>>934のものは06系、このレスのもの(従来のものの発展形)は05系と呼んで区別することにします。
>>807>>822あたりからの変更になります。


コメント:
# 2chのread.cgi 05系からの出力を変換-20151209
# 元datに近づけるためアンカー削除はオフにし
# 後処理で不要なもののみ削除する
# メール欄デコード処理は不要になったので削除
# バナー広告にマッチしないよう正規表現を修正

URLの変換:
s#http://(.+?)/test/read\.cgi/(.+?)/(\d+)/?.*#http://$1/test/read.cgi/$2/$3/#

アンカー削除:
false

後処理:
# アンカータグ削除(レスアンカーに対するタグは削除しない)
s#<a href="http.*?>(.*?)</a>#$1#igk
# BE周りの処置
s#<img src="http://(img\.2ch\.net/.+?)">#sssp://$1#igk
# 以下はhtmltodatの内部処理に組み込まれているので不要
#s#<a href=.?javascript:be\((\d+)(?:,\d+)?\).*?>\?(.*?)</a>#BE:$1-$2#igk

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

937 931 :2015/12/11(金) 17:40:58
/vmukiyuzwさん

ありがとうございます
>>934でいけました

DAT2HTML0.26その2の件はかなり昔に何かでdat化できなかったときに
これを試したら出来てたのでそのままにしてました
いままで不便なく2ちゃんもdat化できてたのでほっておいたという次第です

938 ◆/vmukiyuzw :2016/03/18(金) 00:23:22
最近2ch.netの一部の鯖でhtmlベースでの過去ログが取得できない不具合が出ているようですが。
2ch.netでdat落ちしていても2ch.scで拾われてるケースが多いので、これをなんとかできないか
考えてみました。

最初、単に2ch.netでのURLを2ch.scのURLに読み替えればいいかと考えたのですが
鯖名(xxx.2ch.netのxxxの部分)が異なる場合もあるので単純には変換できない。
どうしたものかと考えたのですが、ふと気づいたのは
2ch.scに拾われてるということは、取得先を2ch.netから2ch.scに切り替えた「ログ速」でも
かなりの確率で拾われていると考えられます。

となるとhtmltodatにも出番がありそうです。「ログ速」からの変換は>>820
Jane系であればhtmltodat-convert2のスクリプトも使えます。

939 名無しさん :2016/03/18(金) 01:32:08
頑張ってください!

940 名無しさん :2016/03/31(木) 02:40:07
>>938
お疲れ様です、いつも利用させてもらってます

>>820の方法で echo鯖(軍板)のdat落ちのログを変換して
jane style ver3.81 に落とし込むことができ
jane styleに表示は可能ですが、改行?がされておらず(横方向に長い)
非常に読みにくい表示になってます

この状況の改善は可能でしょうか、よろしくお願いします。

941 名無しさん :2016/03/31(木) 07:05:33
>>940
ログ速の?URLを貼ってください

942 名無しさん :2016/03/31(木) 11:28:42
質問です
今は存在しない外部掲示板のdatを取得することは可能でしょうか?
ちなみに太陽板というなりきり掲示板でした

943 ◆/vmukiyuzw :2016/03/31(木) 21:50:29
>>940さん
>>941さんのおっしゃるとおりで、具体的なURLを示して頂かないと検証できません。
ただ、URLはログ速のものでなくても元スレ(2ch.netのもの)でもいいです。
>>820のパラメータの中でURLを読み替えるようになっているので)


以下は推測にすぎないのですが。
改行がされていない?という状況だと、レス内の<br>タグが何らかの理由で
削除されてしまっているのではないかと思います。
>>820をそのまま使用していた場合そんなことにはならないはずですが
以前、JaneでReplaceStr.txtを使用していた場合に
このスレの表示の一部が変更されてしまい、パラメータをコピペする際に
内容が変わってしまって不具合が起きたということがありました。
今回のケースもそれかもしれないという気がします・・・

>>820をJaneStyleからではなく、IE等の汎用ブラウザからコピペしても
同じ結果になるか試してみてください。

944 940 :2016/03/31(木) 22:00:11
ご返事が遅くなり申し訳ありません

元スレのURL
民主党ですが他国の同類です
http://echo.2ch.net/test/read.cgi/army/1459050594/
(ログ速URL)
http://www.logsoku.com/r/2ch.sc/army/1459050594/

このURLでいいのかちょっと不安ですが、こちらの方でも自力で問題解決できるかやってみます

945 ◆/vmukiyuzw :2016/03/31(木) 22:04:22
>>942さん
なりきり太陽板については以前(>>516-517)扱ったことがあるのですが
2012年頃に閉鎖されたようですね。
元データがなければhtmltodatとしてはできることはないです。

webarchive等でたまたま拾われてるのを探すか、
有志の方が過去ログをまとめて保存してくれているサイトを探すか、
いずれにせよGoogle先生に頼まないと仕方ないですね。
(「なりきり太陽板」でぐぐってみるとそれらしきサイトはいくつか見かけましたけど)

946 ◆/vmukiyuzw :2016/03/31(木) 22:56:00
>>940,944さん
こちらでも現象再現しました。で原因も半分わかりました。
>>943で推測したのに近く、<br>タグが<br/>のままになっている
ことが改行がうまくいかなかった理由です。

しかし、<br/>を<br>に変換する処理は前処理に入れてるのですが
何故か効いていない。
他のdat落ちスレで試してみると効いているので
なぜこのスレだけが効かないのか・・・
で、この処理を後処理に移してみるとこれまた何故か効く。
・・・ということで根本原因は今のとこ分かってないです。

詳しくはこれから調べますが、当面お困りの問題の回避策としては
後処理(前処理ではない!)に

s#<br/>#<br>#igk

を入れる、というのでいけるかと思います。

947 942 :2016/04/01(金) 02:00:33
>>945
ありがとうございます
検索してみたところ唯一見つかったのが以下のURLでした
http://karinto.in/taiyoulog/comic/jamp/hxh.html
ここからdat取得は可能でしょうか?

948 940 :2016/04/01(金) 09:02:00
>>946
忙しい中、素早い対応ありがとうございました。
私の方でも解決できました。

949 ◆/vmukiyuzw :2016/04/01(金) 20:47:37
>>942,947さん
そのサイトに関してだけいえば、htmlの形式が非常にクラシカル
(昔の2ch.netが吐いていたhtmlに近いという意味)で、
前処理だのなんだのは不要で単に正規表現「DAT2HTML0.26」で
dat変換できると思います。

950 942 :2016/04/01(金) 22:02:06
>>949
成功しました。ありがとうございました!

951 名無しさん :2016/04/05(火) 10:00:52
すみません
自分も便乗します

閉鎖された外部板のスレのログを取りたいのですが
ぬこでも見ていたのでそっちの自分の履歴からは過去ログが保存されてます
これをhtmltodatで専ブラdat化できますか?

952 ◆/vmukiyuzw :2016/04/05(火) 21:18:50
>>951さん
まず私が「ぬこ」というのを全然知らなかったので調べてみました。
確認ですが、 http://n2ch.net/?guid=ON から行けるサービスのことでいいんですよね?
だとすると、
http://n2ch.net/r/-/xxxx/1000000000/?guid=ON
みたいな形式で得られるhtmlをdatに変換するには、という問題だと考えていいですかね?

953 951 :2016/04/05(火) 22:14:35
>>952
レスありがとうございます

そうです
携帯2chブラウザサービスのぬこです
キチンと書き込んでいなくて申し訳ないです
形式もそれで問題ないと思います

954 ◆/vmukiyuzw :2016/04/06(水) 20:45:38
>>951,953さん
もともとガラケー向けのサービスみたいなので、通信量を減らすための工夫がいろいろされてるんですが
いざ専ブラ用datに変換しようとするとやっかいな点がいくつかあります。

1つは、いろいろ省略オプションが設けられてる点。
(名前欄が板のデフォルト名無しの場合に省略される、投稿日欄が一部省略される、等)
これらを省略せず表示させるには、ぬこ(n2ch.net)側の設定を変更する必要があります。

もう1つは、一度に表示できるレス数に上限がある点。
最大が127レスで、これは設定画面でも明記されてるので当面どうにもならないようです。
ということは、htmltodatで変換する場合、127レス以上のスレは複数回に分けて変換し
結果をテキストエディタ等でつなげ合わせないといけないということになります。

これらへの対処はちょっと長くなるので次レス以降で。

955 ◆/vmukiyuzw :2016/04/06(水) 21:04:01
>>954続き
まず、ぬこ(n2ch.net)の設定変更についてです。

設定の変更は、IE等の汎用ブラウザでn2ch.netでのスレッドを表示し
画面の下のほうにある「設」をクリックします。
「ユーザ設定」画面が出てきて「レス表示」のところで色々弄れるのですが、
ここで設定した内容はn2ch.netにアクセスするURLの一部に反映されるようになっています。
なので、私が設定してみた結果の値を書いておきます。

ブラウザでn2ch.netのスレッドを表示した後、
URLの n2ch.net/r/-/ の「-」の部分を「-tE--OKxI」に変更してください。
次に、レス番号(板名/スレッド番号/ の後の数字)には「1-」を入れてください。

例: http://n2ch.net/r/-tE--OKxI/software/1458254677/1-?guid=ON

これでブラウザには該当スレの先頭から127までのレスが表示されると思います。
(名前欄の省略等もなくなっているはず)
ここでブラウザのURL欄に表示されてるURLをhtmltodatのURL欄にコピペしてdat変換します。

次に、ブラウザ側でn2ch.netのスレッド画面下部の「次」をクリックします。
これでブラウザには該当スレの128以降のレスが表示されるはずです。
(URLを直接htmltodatに入力するのではなく一旦ブラウザを経由させるのは
この「次」機能を使いたいため。でないと自分で次のレス番号を計算しないといけない)
で、ブラウザのURL欄のURLを再びhtmltodatにコピペしてdat変換します。
※このとき、dat保存するファイル名は前回と同じになるはずなので重複しないように適当に変えてください。
※「変換警告」ウィンドウが出て「レス 0-128 の間が飛んでいます」等と出ると思いますが
 気にしなくていいです。

これをスレの最後まで繰り返して、得られたいくつかのdatファイルをテキストエディタ等で一つにつなげると。

とりあえずこんな手順で考えてみました。
かなり手間だしわかりにくい部分もあるかもしれませんがどうでしょう。

正規表現等は次レスで。

956 ◆/vmukiyuzw :2016/04/06(水) 21:29:20
>>954-955続き
正規表現等は以下。
前レスでの設定変更云々に時間がかかったのでテストが不十分かもしれません。


コメント:
# ぬこ(n2ch.net)の変換 2016/04/06

前処理:
# ぬこが独自につけるアンカータグを除去
s`<A HREF="\./.*?>(.*?)</A>`$1`g

変換結果式:
$2<>$3<>$4<>$5<>

後処理:
# ID後の(1/2)みたいな表示を取り除く
s`( ID:.*?)\([/\d]*\)`$1`g

正規表現:
m`
(?# レスの区切り) <HR>
(?# レス番号) (\d+)
(?# レス番号の後の数字をスキップ) (?:</FONT>.*?<FONT\ SIZE="-1">)?
(?# 名前) :\ <B>(.*?)</B>
(?# メール欄) \ \[(.*?)\]
(?# 投稿日・ID) \ (.*?)<BR>
(?# レス内容) (.*?)
(?# 次のレス区切り$6)(<HR>)
`kx

957 951 :2016/04/09(土) 01:02:50
ありがとうございました
無事ぬこから過去ログ取得できました
助かりました

ぬこ自体の鯖に残っていれば板やスレッドが消えても取得できるのは大変ありがたいです

958 名無しさん :2016/04/22(金) 09:45:16
お尋ねします
read.cgi7.00?で変換開始をすると、一行が長すぎるか、正規表現が正しくないようですとメッセージが表示されます
その他のタイプを選んでも同じようになります
http://shiba.2ch.net/test/read.cgi/akb/1460929521/ で現象が発生します
対処の仕方を教えて下さいますようよろしくお願い致します

959 名無しさん :2016/04/22(金) 17:41:14
>>958
>>934

960 名無しさん :2016/04/22(金) 22:19:23
>>959
何をどうすれば良いのか正直わかりません

961 ◆/vmukiyuzw :2016/04/22(金) 23:09:43
>>958,960さん
>>959さんのご指摘でわからないということは
推測ですがhtmltodatでprmファイルを使ったことがないのでは?

prmファイルとは何か、どう使うのかについては、
htmltodatのreadme.txtに書いてますので「prm」で検索して参照ください。
また、>>797のレス等も参照ください。

初期のhtmltodatでは、正規表現を一覧から選択または編集して変換すれば
良かったのですが、それだけでは済まないサイトが徐々に増えていき
前処理等の変換オプションが追加されていきました。
で、段々それらの管理・指定方法が面倒になってきたので
ひとまとめで指定できるようにしたのがprmファイルです。
現状では、正規表現だけを選択して変換できるケースのほうが稀で
prmファイルを使ってる方が多いのではと思います。

まあ、言葉でいうほど難しいことではないと思うので一度お試しください。

962 名無しさん :2016/04/23(土) 10:18:33
>>961
prm初めて聞きました。
何をどうすればわかりませんでしたので。
試してみてわかりませんでしたらまた相談させていただきます。
教えていただきありがとうございます。

963 ◆/vmukiyuzw :2017/03/31(金) 23:13:25
最近Fiddlerのスクリプトにばかりかまけていてこちらのほうはほったらかしだったんですが
2ch.net および bbspink.com の read.cgi に仕様変更があったので
こちらにもそれを反映させておきます。
(現状 2ch.net や bbspink.com の過去ログを読むためにこのソフトを使っておられる方が
どれくらいおられるかわかりませんが)

まずは 2ch.net の read.cgi 06系。>>934に対する修正ということになります。


コメント:
# 2chのread.cgi 06系からの出力を変換-20170331
# 2chのcgi仕様変更(06系)に対応
# read.cgi側の細かい仕様変更にぼちぼち対応

URLの変換:
s#https?://(.+?)/test/read\.cgi/(.+?)/(\d+)/?.*#http://$1/test/read.cgi/$2/$3/#

前処理:
# メール欄にURLが貼られた時のとりあえず対応
s#(<a href="mailto:)([^<>]*?)(?:<a href[^>]*?>)?([^<]*?)(?:</a>)?([^>]*?)(">)#$1$2$3$4$5#ig

アンカー削除:
false

透明あぼーんを補う:
true

後処理:
# BE周りの処置
s#<img src=".*?//(img\.2ch\.net/.+?)">#sssp://$1#igk
s#</div><div class="be .*?><a href=".*?//be\.2ch\.net/user/(\d+).*?>\?(.*?)</a># BE:$1-$2#ig
# アンカータグ削除(レスアンカーに対するタグは削除しない)
s#<a href="http.*?>(.*?)</a>#$1#igk
# お絵かき機能等のimgタグを除去
s#<img src=".*?(//.*?)">#sssp:$1#igk

正規表現:
m#<div\ class="number">([0-9]+).+?<div\ class="name"><b>(?:<a\ href="mailto:(.*?)">)?(.*?)(?:</a>)?</b></div><div\ class="date">(.*?)</div><div\ class="message">(.*?)</div>#mi

964 ◆/vmukiyuzw :2017/03/31(金) 23:23:29
続いて、bbspink.com の read.cgi への対応。
2017年3月上旬に仕様変更があり 2ch.net の read.cgi とはかなり異なるものとなりました。


コメント:
# bbspink.comのread.cgi からの出力を変換-20170331

URLの変換:
s#https?://(.+?)/test/read\.cgi/(.+?)/(\d+)/?.*#http://$1/test/read.cgi/$2/$3/#

前処理:
# メール欄にURLが貼られた時のとりあえず対応
s#(<a href="mailto:)([^<>]*?)(?:<a href[^>]*?>)?([^<]*?)(?:</a>)?([^>]*?)(">)#$1$2$3$4$5#ig

アンカー削除:
false

透明あぼーんを補う:
true

後処理:
# 名前欄のfontタグ除去
s#<font color="green">(.*?)</font>#$1#igk
# BE周りの処理
s#</span><div class="be .*?><a href=".*?//be\.2ch\.net/user/(\d+).*?>\?(.*?)</a></div># BE:$1-$2#ig
# BE周り処理との絡みでゴミが残るので除去
s#</span><>#<>#ig,"<>")
# アンカータグ削除(レスアンカーに対するタグは削除しない)
s#<a href="http.*?>(.*?)</a>#$1#igk
# お絵かき機能等のimgタグ削除
s#<img src=".*?(//.*?)">#sssp:$1#igk

正規表現:
m#<dl class="post".*?><dt class=""><span class="number">(\d+).*?</span><span class="name"><b>(?:<a href="mailto:(.*?)">)?(.*?)(?:</a>)?</b></span><span class="date">(.*?)</dt><dd class="thread_in">(.*?)</dd></dl>#mi

965 名無しさん :2017/04/02(日) 10:43:25
>>963
> 過去ログを読むためにこのソフトを使って…

います、ここにいますー(´・ω・`)ノ
今回の仕様変更に伴って、ちょっと自分の力ではどうしようもなかったので
対応されたOnBeforeResponseの中から必要そうな部分を移植してどうにか使用しておりました…

このたびprmの形にしていただきまして大変助かりました
ありがとうございます

966 名無しさん :2017/04/03(月) 00:33:03
>>963
ここにもおります
ご対応いただきまして助かります
本当にありがとうございました

967 名無しさん :2017/04/03(月) 01:46:54
>>963
利用させてもらってます
有難うです

968 名無しさん :2017/04/07(金) 16:29:31
>>963-964
利用させてもらってます!

969 名無しさん :2017/04/17(月) 20:36:57
>>963
1時間ほど前に落ちたν速のとあるスレで動作確認しました。
ありがとうございます。

970 969 :2017/04/24(月) 21:05:57
ν速の過去ログ取得できない(´;ω;`)ブワッ

971 ◆/vmukiyuzw :2017/04/25(火) 01:04:09
>>970さん
ご存知の方も多いかもしれませんが、2chのread.cgiにバージョンアップ(07.0.0)があり
htmltodatByFiddlerのほうでその対応をしていました。
でとりあえず落ち着いたような気もするのでこちらにも反映しておきます。


コメント:
# 2chのread.cgi 07系からの出力を変換-20170424
# 2chのcgi仕様変更(07系)に対応

URLの変換:
s#https?://(.+?)/test/read\.cgi/(.+?)/(\d+)/?.*#http://$1/test/read.cgi/$2/$3/#

前処理:
# メール欄にURLが貼られた時のとりあえず対応
s#(<a href="mailto:)([^<>]*?)(?:<a href[^>]*?>)?([^<]*?)(?:</a>)?([^>]*?)(">)#$1$2$3$4$5#ig

アンカー削除:
false

透明あぼーんを補う:
true

後処理:
# BE周りの処置
s#<img src=".*?//(img\.2ch\.net/.+?)">#sssp://$1#igk
s#</span><span class="be .*?><a href=".*?//be\.2ch\.net/user/(\d+).*?>\?(.*?)</a># BE:$1-$2#ig
# アンカータグ削除(レスアンカーに対するタグは削除しない)
s#<a href="http.*?>(.*?)</a>#$1#igk
# お絵かき機能等のimgタグを除去
s#<img src=".*?(//.*?)">#sssp:$1#igk

正規表現:
m#<span\ class="number">([0-9]+).+?<span\ class="name"><b>(?:<a\ href="mailto:(.*?)">)?(.*?)(?:</a>)?</b></span><span\ class="date">(.*?)</span></div><div\ class="message"><span\ class="escaped">(.*?)</span></div>#mi

972 ◆/vmukiyuzw :2017/04/25(火) 01:43:04
>>971 補足
現状はまだ流動的で正確に把握しているわけではないのですが、
read.cgi 06系が動いているサーバもまだあると思われるので、
>>971 は >>963 に対する修正というわけではないのでご注意ください。
(両方生かしておいて使い分ける必要がある)

さらには read.cgi 05系(>>936)が動いてるサーバも未だ存在しますし
bbspink はそれらとはまた異なり >>964 になります。
つまり現状4パターンを使い分ける必要があります。
htmltodatByFiddlerではどのパターンか自動判別して使い分けるようにしてますが
htmltodatでは申し訳ないですがユーザーが判断して使い分けるしか今のとこありません。

あと、htmltodatに昔からある正規表現一覧の中に
「read.cgi7.00?」 というのがあるのですが、
これは今回の2ch側のバージョンアップ read.cgi 07.0.0 とは別物なので
混同しないようにしてください。
(管理している人が変わっていつのまにか元のバージョン番号に戻ってしまった感じ?)

973 970 :2017/04/25(火) 06:09:49
>>972
ありがとうございます。無事取得できました。

974 名無しさん :2017/04/26(水) 00:11:43
いつもお世話になります。私も変換できました。
ありがとうございます

975 名無しさん :2017/04/30(日) 04:59:32
色々探しまくってこのスレにたどり着きました
過去ログが何故かgoogleとかで検索すると読めるけど
何故かjaneで見ると読めなくて困ってました
>>971 を試したら出来ました
ありがとです

976 ◆/vmukiyuzw :2017/05/05(金) 23:49:20
2chのread.cgi 07系にバージョンアップ(07.0.1)があったので
対応したものを反映しておきます。
>>971への修正ということになります。


コメント:
# 2chのread.cgi 07系からの出力を変換-20170505
# 2chのcgi仕様変更(07.0.1)に対応

URLの変換:
s#https?://(.+?)/test/read\.cgi/(.+?)/(\d+)/?.*#http://$1/test/read.cgi/$2/$3/#

前処理:
# メール欄にURLが貼られた時のとりあえず対応
s#(<a href="mailto:)([^<>]*?)(?:<a href[^>]*?>)?([^<]*?)(?:</a>)?([^>]*?)(">)#$1$2$3$4$5#ig

アンカー削除:
false

透明あぼーんを補う:
true

後処理:
# BE周りの処置
s#<img src=".*?//(img\.2ch\.net/.+?)">#sssp://$1#igk
s#</span><span class="be .*?><a href=".*?//be\.2ch\.net/user/(\d+).*?>\?(.*?)</a># BE:$1-$2#ig
# アンカータグ削除(レスアンカーに対するタグは削除しない)
s#<a href="http.*?>(.*?)</a>#$1#igk
# お絵かき機能等のimgタグを除去
s#<img src=".*?(//.*?)">#sssp:$1#igk
# IDの前に付くようになった不要なタグを除去
s#</span><span class="uid"># #igk

正規表現:
m#<span\ class="number">([0-9]+).+?<span\ class="name"><b>(?:<a\ href="mailto:(.*?)">)?(.*?)(?:</a>)?</b></span><span\ class="date">(.*?)</span></div><div\ class="message"><span\ class="escaped">(.*?)</span></div>#mi

977 名無しさん :2017/05/06(土) 15:38:22
いつもありがとうございます
非常に助かっております

978 名無しさん :2017/05/06(土) 17:42:50
日がだいぶ長くなった夕方〜…w

979 名無しさん :2017/07/05(水) 10:11:06
また1行が長すぎるか正規表現が正しくないようですって出て
変換できなくなりました

980 名無しさん :2017/07/05(水) 10:12:42
やっぱり昔の使ったら出来ました
すみませんでした

981 ◆/vmukiyuzw :2017/07/05(水) 22:14:25
状況説明がほぼないので推測にすぎないですが
2chのread.cgiが07系にバージョンアップしていた鯖が
鯖移転により06系に戻ってるケースが多く見られるようですので
その関係ですかね。
まあread.cgi 07系はいろいろ問題があってそれが改善されないまま今に至るんで
個人的には「07系の不具合を直せないんなら06系に戻すべき」と思います。

982 名無しさん :2017/07/06(木) 15:33:16
いつもありがとうございます(`Д´)ゞ

983 名無しさん :2017/08/21(月) 17:06:29
いつも利用させていただいてます
ありがたい

最近知ったのですが
dat保存ボタンを押してファイルダイアログボックスが表示したとき、
Alt+↑キーで上の階層に素早く移動できる

984 名無しさん :2017/10/02(月) 17:00:19
過去ログが5chになってhttpsになって、そのまま入力してもみつかりませんでしたになっちゃうね
しょうがないから5chのログ落としてローカルhtmlファイルとして食わせてdat変換できるようになった

985 名無しさん :2017/10/02(月) 20:38:11
久しぶりに"htmltodat.exe"を起動した〜

986 ◆/vmukiyuzw :2017/10/03(火) 00:16:04
>>984さん
すみません。
http://jbbs.shitaraba.net/bbs/read.cgi/computer/1929/1038409548/
のほうがちょっと大変でまだいろいろありそうなので・・・
最近では向こうでいろいろやってうまくいった結果をこっちにフィードバックしてる形なので
向こうが落ち着くまで並行してこちらをサポートするのは難しい感じです。

987 名無しさん :2017/10/03(火) 00:34:54
httpsのs抜くだけで正規表現も変えずに今まで通り変換できたよ
全板確認したわけじゃないけど

988 984 :2017/10/03(火) 10:28:51
>>986
ああ、急ぎませんから大丈夫ですよ。ひと手間かかるとはいえ使えてますから
>>987
確かにいけるね。ありがとう

989 ◆/vmukiyuzw :2017/10/29(日) 01:10:04
久しぶりですがバージョンアップしました(0.11.9)
 ・https://〜 のURLにとりあえず対処。SSL/TLSに完全対処できたわけではない。
 ・2ch(5ch)でTITLEタグの形式が修正されたので対応。

最近の2ch(5ch)のURLがhttps://〜 に変更されつつあるので、
とりあえずhttps://の入力だけでも受け付けるようにしないとまずいと思い修正しました。
URL欄にhttps://と入力してもエラーにならないようにしただけで内部的に
SSL/TLSに対処したわけではないので、
「受信オプション」-「URLの変換」でhttps→httpに変換することが前提です。

現状、
read.cgi 05系 >>936
read.cgi 06系 >>963
read.cgi 07系 >>976
bbspink >>964
のprm形式ではこの変換をやっているつもりなので
これらを使っておられる方なら問題ないと思うのですが。
(いや、よく見ると05系は対応してないな・・・^^;)

990 ◆/vmukiyuzw :2017/10/29(日) 01:50:14
ちょっと長くなるので続きます。

>>987さんの指摘にあった「httpsのs抜くだけでいける」というのは、
htmltodatは内部的にhttpレスポンス301や302のリダイレクトは自動で追尾するようになっているので
.2ch.netのURLから.5ch.netに追尾してうまくいってたんだと思います。
これも「URLの変換」で2ch.net→5ch.netに読み替えるのが正しい対処なのかもしれません。

あと、SSL/TLSに対処したわけではないと書きましたが実は以前から試し中で
環境によっては動く(https://のURLでも取得できる)かもしれません。
(あまり色々な環境で試したわけではないので動作を保証できない)
libeay32.dll,ssleay32.dllがある環境なら動くかも・・・

991 ◆/vmukiyuzw :2017/10/29(日) 05:42:26
うわわわわ申し訳ない
トップページを更新してなかったです・・・
凡ミス申し訳ないです

上2レスの書き込みを見てダウンロードされた方は
前のバージョン(0.11.8)をダウンロードされてると思うので
ダウンロードし直してください。
本当にごめんなさい。

992 名無しさん :2017/10/30(月) 13:41:28
0.11.9落としてまっさらのところから使ってみました
試しに
http://yomogi.2ch.net/test/read.cgi/kaden/1436017606/
で取得時に「Could not load SSL library.」と出たのでOpenSSLのライブラリを入れたら取得できるようになりました

対応ありがとうございます

993 名無しさん :2017/11/09(木) 17:03:36
ログ速、また変化ですかね?
https://www.logsoku.com/r/2ch.net/korea/1073404182/
がダメでした

#本家から消えてるdatがちらほらあるなあ…

994 ◆/vmukiyuzw :2017/11/10(金) 23:32:18
>>993さん
挙げられたスレのように 2ch(5ch).net 上には見つからないスレも
少なからずありますよね。であればログ速の動向もチェックしとかないといけないか・・・

ここでログ速を扱ったのは最近では >>820>>940-946 あたりですが
そこからログ速の形式は結構変更されているようです。
で、対応したprm形式を以下に・・・とその前に一点留意事項。

現在のログ速は https に完全対応したようで、http:// のURLでアクセスしても
https:// にリダイレクトされてしまうようです。
なので、SSL/TLS暫定対応のhtmltodat 0.11.9を使う必要があるし
OpenSSLのdllの導入も必要です。
でも、https:// のリンクを貼っておられるので>>993さんは
多分その辺は理解して頂いてると期待して・・・
SSL/TLS対応についてはまたあらためてちゃんと書きます。

例によって(?)前置きが長くなってしまったのでprm形式は次レスで。

995 ◆/vmukiyuzw :2017/11/10(金) 23:34:27
>>994続き


コメント:
# ログ速変換用-20171110
# html形式の変更に対応

URLの変換:
s#http://(.+?)/test/read\.cgi/(.+?)/(\d+)/?.*#http://logsoku.com/r/2ch.net/$2/$3/#

前処理:
# スレタイ補正
s#(<title>)(.*?) \| \S*?(</title>)#$1$2$3#ik
# ニュー速等のアイコンを2ch形式に補正(663さんのものをアレンジ)
s#<img src="http://cdn.logsoku.com/(img.2ch.net/ico/.+?)&quot;&gt;#sssp://$1#igk
# 「〜回発言」を取り除く(663さんのものをアレンジ)+ID周りの変更を反映
s#(ID:)<a class="id_color.*?>(.*?)</a>(.*?) ?\[.*?\] #$1$2$3#igk
# ニコ動やyoutubeのサムネイル削除
s#<div class='video.*?>.*?<img .*?></div>##igk
s#<(iframe|img class).+?<br/>##g;
# <br/>タグに対応してない専ブラへの対応
s#<br/>#<br>#igk

透明あぼーんを補う:
true

変換結果式:
$2<>$3<>$4<>$5<>

正規表現:
m`
(?# レス番号) <dl\sid="(\d+)".*?
(?# 名前) <span\sclass="n?em">(?:<b>)?(.*?)(?:</b>)?</span>.*?
(?# メール欄) \[(.*?)\].*?
(?# 投稿日・ID) :(.*?)</dt>\s
(?# レス内容) <dd>(.*?)</dd>
`imkx

996 名無しさん :2017/11/11(土) 15:47:34
>>995
対応ありがとうございます
無事変換できました

997 ◆/vmukiyuzw :2017/11/18(土) 01:23:36
htmltodat-convert2改をリリースしました(htmltodat-convert2_20171117)

これは、663さん(mirrorhenkanさん)が作成されて
http://mirrorhenkan.g.ribbon.to/jane/htmltodat-convert2/
で公開されていたもので、htmltodatのバッチ呼び出し機能を利用して
Jane系の専ブラから外部コマンドでdat変換できるようにしたものです。

近頃の2ch(5ch).netの仕様変更により修正が必要になっていたので、
mirrorhenkanさんにご連絡して許可を頂き、改造・再配布させてもらう
ことになりました。mirrorhenkanさんありがとうございます。

修正内容は https と 5ch.net への対応といった程度のことなのですが、
5ch.net 対応はスクリプトの手修正が必要になる場合があります。
(readme2.txt参照)
これは本当は自動判定が可能なのですが、元のスクリプトの作りに
影響しそうだったんでとりあえず安直な方法で対応しました。
今後いい方法をまた検討したいと思います。

998 ◆/vmukiyuzw :2017/11/18(土) 01:47:38
> (readme2.txt参照)
改_readme.txt の間違いでした。(この名前をどうするかで実は結構悩んだ)

正直、gethtmldatみたいなもっと取り扱いが簡単で便利なものもあるので
htmltodat-convert2にいまさらニーズはあるだろうかとは思いました。
が、最近たまたまログ速の話題が出たので、
「ログ速等外部サイトを読むのにまだ使えるじゃん」と考え、
まだメンテしておく必要があるかなと思いました。

999 名無しさん :2017/12/14(木) 13:46:06
http://peach.archive.ailesblanc.com/
桃羽書庫という所でログ見つかったのだけど
正規表現教えて下さい。<(_ _)>

1000 ◆/vmukiyuzw :2017/12/15(金) 00:31:49
>>999さん
できればこういうご質問では、TOPページだけでなく
具体的なスレへのURLも貼って欲しいです。
(こちらで検索してスレを探さないといけなかったので^^;)

さて、件のサイトのTOPページには
「生datは専用ブラウザでアクセスしてください」とのコメントがあります。
ということはdat形式に直接アクセスできるということでは?と思い
http://peach.archive.ailesblanc.com/erog/dat/1298449985.dat
みたいなURLを試してみたのですが read.cgi にリダイレクトされてしまいます。
が、「専用ブラウザで」の一言が気になったんで試しにUAをMonazillaのものにしてみると
dat形式で取得できることがわかりました。
(なんなら、外部板扱いで専ブラに登録したら直接読めるのでは?とも思ったのですが
subject.txtがないようなのでそれは無理なようでした)

一応正規表現でのHTMLからのdat変換も考えてはみたのですが、datで取得できるなら
その方が楽なので保留にします。どうしてもHTML形式で取得したいということなら
またご相談ください。



コメント:
# 桃羽書庫からdatを取得-20171215
# htmltodat変換を行わずdatを直接取得する
# User-Agentの設定がポイント

HTTPヘッダの追加:
User-Agent: Monazilla/1.0

URLの変換:
# read.cgiへのリクエストをdatへのリクエストに変換
s#https?://(.*?)/test/read\.cgi/(.*?)/(\d+)/.*#http://peach.archive.ailesblanc.com/$2/dat/$3.dat#

dat変換をしない(前処理のみ行う):
true

1001 名無しさん :2017/12/15(金) 16:59:15
>>1000さまありがとう。datにできました。<(_ _)>
ピンクで恥ずかしくて・・・。以後恥ずかしく無い
スレ探してURL貼るように努めます。
(って、トップにエロゲ3板って書いてあるし(恥)

生datはirvineで落としてみたら、中身htmlで諦め
たんだけど/erog/dat/にしたら落とせました。

本当にありがとう。

1002 ◆/vmukiyuzw :2017/12/15(金) 21:25:12
>>1000
> (なんなら、外部板扱いで専ブラに登録したら直接読めるのでは?とも思ったのですが
> subject.txtがないようなのでそれは無理なようでした)

と書いたのですが、専ブラの種類にもよるかもしれませんが
外部板として登録して専ブラに認識させれば
専ブラのURL欄に入力することでdatでの取得ができるようです。
>>1000の例でいえば
http://peach.archive.ailesblanc.com/erog/ を外部板として登録し
http://peach.archive.ailesblanc.com/test/read.cgi/erog/1298449985/
のURLを入力)

この方法であればもはやhtmltodatは不要ですw
まあでも、最終的には元の板のログとして読みたいと思われるので
手動でログをマージする手間が多分必要になり
どっちが楽/簡単かは何とも言えないですが。

1003 名無しさん :2017/12/16(土) 00:57:15
>>1002さま
何度もありがとう。<(_ _)>
外部板登録で読めました。楽です。

Janeでリンク右クリから”リンクを桃から読む”
とかで元板にDLできればいいのですけどね。

1004 ◆/vmukiyuzw :2017/12/16(土) 01:56:23
>>1003さん
もはや蛇足かもしれませんが

> Janeでリンク右クリから”リンクを桃から読む”
> とかで元板にDLできればいいのですけどね。

ということなら、>>997で書いた htmltodat-convert2改 を使うという手もありますよ。

・htmltodat.exeと関連dllをJane2ch.exeと同じフォルダに置く
・htmltodat-convert2.wsf(http://mukiyu.g.ribbon.to からダウンロード)を同じフォルダに保存
・レス>>1000 後半の内容をテキストファイルで「桃羽書庫.prm」の名前でやはり同じフォルダに保存
・Janeの外部コマンドで

 wscript "$BASEPATHhtmltodat-convert2.wsf" "$LINK$URL" "桃羽書庫"

でお望みの形に近くできるかもしれません。

1005 名無しさん :2017/12/16(土) 14:04:43
今頃気づいたけどコテだったのね。^^;
ありがとう>>◆/vmukiyuzwさま。
更に>>1000のはprmだったのね。
今までhtmltodatの入力欄に書いて、毎回セット
してました・・・ :Drz

書式理解不能で、>>1000のrpmをまんま使いま
したらエラー無く読めましたけど、まずいですか?

1006 ◆/vmukiyuzw :2017/12/16(土) 21:56:37
>>1005さん
> 書式理解不能で、>>1000のrpmをまんま使いま
> したらエラー無く読めましたけど、まずいですか?

prmの形式は、特に書式を分からなくても
単にコピペすればいいようにしているので
それでうまく動いているのであれば特に問題ないと思います。

ただ、専ブラのレスからコピペする場合、
Replacestr.txt等の機能が作用してレス内容が置き変わってしまい
不具合の原因となったことが以前ありました。
なのでこのスレからのコピペでprmを作る場合はできれば専ブラではなく
汎用ブラウザを使うことをお勧めします。

1007 1005 :2017/12/17(日) 00:15:45
>>◆/vmukiyuzwさま
ブラウザから貼り直しました。
ほんとにほんとにありがとう。<(_ _)>

1008 名無しさん :2017/12/19(火) 09:35:18
変換中。しばらくお待ち下さい。。。

1009 ◆/vmukiyuzw :2018/05/05(土) 00:11:16
バージョンアップしました(0.11.10)
 ・SSL/TLSに対応した。

これでhttps:// のURLへのアクセスもできるようになったと思います。

OpenSSLのdllの導入が必要になります。
http://indy.fulgan.com/SSL/ の openssl-ほにゃらら-i386-win32.zip の一番新しいやつを
ダウンロード・解凍して libeay32.dll と ssleay32.dll をhtmltodat.exeと
同じフォルダーにコピーして下さい。
(OpenSSLのライブラリは最近いろんなプログラムで使われているので
Windowsのシステムフォルダに置くよう推奨したほうがいいのかな?
また、頻繁に更新されているライブラリなので最新の情報をウォッチしておく必要も
あると思われます)

前バージョンまでが「SSL/TLS暫定対応」だったのは、
今まで使っていたコンポーネントがTLS1.2に対応してなかったためです。
TLS1.2対応にはコンポーネントのバージョンを上げる必要があったのですが、
互換性の部分で不具合が出がちと聞いていたので二の足を踏んでいました。
ですが、意を決してやってみるともちろん不具合はいくらか出たのですが
意外に楽に対処できたのでまあ良かったかなと思います。

現在使われているprmファイル等への影響は基本的にはないはずですが
なにかありましたらここへご連絡ください。

1010 名無しさん :2018/06/21(木) 15:35:29
eggサーバーなどで使われている read.cgi ver 07.1.0 2017/10 Walang Kapalit ★
で使える正規表現のパターンがあれば教えていただけないでしょうか

1011 ◆/vmukiyuzw :2018/06/22(金) 00:00:21
>>1010さん
変換自体は>>976 でできるはずですが5chへの対応ができてない部分とか
冗長な部分とかあったので修正しておきます。
2018/06/21現在 bbspink で使われている 07.2.0、運用情報等のagree鯖で使われている 07.2.1 にも対応。


コメント:
# 2chのread.cgi 07系からの出力を変換-20180621
# 2chのcgi仕様変更(07.1.0 - 07.2.1)に対応

URLの変換:
# htmltodat 0.11.10以降を使っていればこれはなくてもよい
s#https?://(.+?)/test/read\.cgi/(.+?)/(\d+)/?.*#http://$1/test/read.cgi/$2/$3/#

前処理:
# メール欄にURLが貼られた時のとりあえず対応
s#(<a href="mailto:)([^<>]*?)(?:<a href[^>]*?>)?([^<]*?)(?:</a>)?([^>]*?)(">)#$1$2$3$4$5#ig

アンカー削除:
false

透明あぼーんを補う:
true

後処理:
# BE周りの処置
s#</span><span class="be .*?><a href=".*?//be\.(?:[25]ch\.net|bbspink\.com)/user/(\d+).*?>\?(.*?)</a># BE:$1-$2#ig
# アンカータグ削除(レスアンカーに対するタグは削除しない)
s#<a(?: class="image")? href="http.*?>(.*?)</a>#$1#igk
# お絵かき機能等のimgタグを除去
s#<img src=".*?(//.*?)">#sssp:$1#igk
# IDの前に付くようになった不要なタグを除去
s#</span><span class="uid"># #igk
# 07.2.1で追加された不要な要素を除去
s#<><span class="AA">(.*?)</span><>#<>$1<>#igk
s#(target="_blank").*?>#$1>#igk

正規表現:
m#<span\ class="number">([0-9]+).+?<span\ class="name"><b>(?:<a\ href="mailto:(.*?)">)?(.*?)(?:</a>)?</b></span><span\ class="date">(.*?)</span></div><div\ class="message"><span\ class="escaped">(.*?)</span></div>#mi

1012 名無しさん :2018/10/04(木) 15:03:16
vip・実況系の画像関係の仕様が変わったようで、htmltodatで変換すると
<a class="image" href="http://jump.5ch.net/?https://xxx.jpg&quot;&gt;https://xxx.jpg&lt;/a&gt;
という文字列が入るようになりました。
このdatを専ブラで表示すると、
http://jump.5ch.net/?https://xxx.jpghttps://xxx.jpgの二種類のリンクが表示されるようになります。
ご対応していただけたら幸いです。

1013 ◆/vmukiyuzw :2018/10/04(木) 23:58:16
>>1012さん
それは多分、read.cgi 07.2.1 と呼ばれているものが
当初agree鯖(運用系のサーバ)でだけ使われていたものが他のサーバにも
適用されてきている状況かと思います。
で、それへの対応ということなら>>1011で出来ている筈なのですが。
s#<a(?: class="image")? href="http.*?>(.*?)</a>#$1#igk
の行がその問題に対処しています。

もし>>1011を適用してもうまくいかないという場合、
専ブラでなく汎用ブラウザで>>1011のレスを表示しそれをコピペして
prmファイルを作り直してみてください。
(専ブラからコピーするとReplaceStr等の機能で正しくコピーできない可能性がある)
それでもうまくいかない場合は該当のスレのURLをお教えください。

1014 名無しさん :2018/10/06(土) 11:11:16
>>1013さま
コピペした所、問題なく変換出来ました!
ご対応して頂きありがとうございます。

1015 名無しさん :2018/11/25(日) 16:11:37
現在のみみずんで使える正規表現ありませんか?

1016 ◆/vmukiyuzw :2018/11/26(月) 19:57:03
>>1015さん
現在のみみずんの状況があまりよく分かってないので
みみずんでのスレのURLをいくつか例示して
頂けないでしょうか。

1017 名無しさん :2018/11/28(水) 07:33:33
みみずん
http://mimizun.com/log/2ch/girls/1257859037/
ここもメルアドがcdnになってます

1018 ◆/vmukiyuzw :2018/11/29(木) 01:07:27
バージョンアップしました(0.11.11)
 ・0.11.4で取り入れたメール欄難読化のデコード処理を復活

「メール欄難読化のデコード処理」については、
>>819あたりから問題になって>>821(v0.11.4)で対応したのですが
その後(2015年3月頃?)2chでは難読化は行われなくなったので
htmltodatの処理としては無効にしていました。

が、>>1015,1017さんのご指摘によりみみずんではまだ難読化は行われてるということなので
デコード処理を復活させました。
(コメントアウトしていたのを外しただけですが^^;)

で、これを前提としての現在のみみずんでの正規表現等は次レスで。

1019 ◆/vmukiyuzw :2018/11/29(木) 01:47:55
みみずんの変換についてはかなり前ですが>>710 のころは
dat形式でアクセスすることが可能だったんですが今では無理みたいですね。
で、html形式は>>711のころとさして変わってないようなんですが
若干変更されてる部分と難読化デコードを含めて以下のようにしてみました。



コメント:
# みみずん(mimizun.com)変換-20181128

前処理:
# 名前欄のemail-protectionをデコードする
s`<a href="/cdn-cgi/l/(email-protection)".+?data-cfemail="(.+?)">\[email.*?\]</a>`$1#$2`ikg
# メール欄のemail-protectionをデコードする
s`(<a href=)"/cdn-cgi/l/(email-protection#.*?">)`$1"mailto:$2`ikg

後処理:
s`<br ?/>`<br>`g
s`<time .*?>(.*?)</time>`$1`g

正規表現:
m`
<div\ class="contributor"><a\ name="(\d+)">.*? #レス番
<span\ class="handle">(?:<A\ HREF="mailto:(.+?)">)? #メール欄
(.+?)(?:</A>)?</span> #名前欄
:(.*?)</div> #投稿日
<div\ class="res">(.*?)</div> #レス本文
`mikx

1020 名無しさん :2018/12/01(土) 08:50:34
>>1019
>>1015さんとは無関係の者です
> dat形式でアクセスすることが可能だったんですが今では無理みたいですね。
に驚いて確認してみましたが、dat形式でDLできました(wgetで、ですけど…)
datでDLできないのが「URLが.datでもHTML形式になってしまう」のなら
おそらくUser-Agentに Monazilla が含まれていないのが原因です
cf. ttp://mimizun.com/blog/2008/09/dat.html
  ttp://mimizun.com/blog/2012/02/post-694.html

…というか、mukiyuさんはご存じのはずでしたね
対応した結果が >>572 で、でも >>908 でダメになった、と。

というわけで、 >>1000 のようにすればよいのではないかと思います
>>1000 との違いは、URLの変換のところを
s#https?://(.*?)/test/read\.cgi/(.*?)/(\d+)/.*#http://mimizun.com/log/2ch/$2/$3.dat#
に変えるだけだと思うのですが、テストしたら文字化けしたので(おそらくおま環)
正しいか確認できていません

ここからはhtmltodatと関係なくなってしまうのですが、もしJaneXenoを使っているなら
設定で「みみずん検索から過去ログを取得」にチェックを入れるとみみずんからdatを取ってくれます
このとき、"過去ログだと判定させる"のがミソで、板一覧を先に更新しておかないと失敗することがあります
(JaneXenoはAPI非対応で、公開も終了しています)

余談ですが、wgetでHeaderを取得するとこんな感じでした(一部)
ttp://mimizun.com/log/2ch/girls/1257859037.dat
Content-Type: text/download
Last-Modified: Mon, 06 Feb 2012 15:17:25 GMT
Vary: Accept-Encoding
Server: cloudflare
みみずんさんcloudflareを導入されたようですね メールアドレス難読化はおそらくcloudflareがやっています
2chでメール欄難読化をやめた後くらいに知ったのですが、cloudflareを利用するとき
難読化するかオプションで選べるらしいです
2chは途中で 難読化する→難読化しない に変更したわけで、みみずんさんも変更されるかもしれません
あと、Content-Lengthがない…
実際にDLしてみると 153,432 byte で、dat形式で、JaneXenoに入れてちゃんと読めました
JaneXenoの「みみずん検索から過去ログを取得」で取得したdatとも一致します
エンコードはSJISですし、なぜhtmltodatで文字化けするのか… まあゆっくり検証します
あと、datのメール欄は難読化されたりしません。当然か。

長々とごめんなさい

1021 ◆/vmukiyuzw :2018/12/02(日) 00:52:35
>>1020さん
検証いただきありがとうございます。大変助かりました。
みみずんのdatにアクセスできないのがUser-Agentのせいだったとは盲点でした、
5chへの影響ばかり気を取られていたので。
で、文字化けに関してですが、決しておま環などではなくこちらでも再現しました。
>>1000 でも文字化けしますね。

調べてみると、以前のバージョン(0.11.9とか)だと発生しないんで、
>>1009 から採用した通信コンポーネントIndy10の仕様と現在のhtmltodatの仕様の
食い違いが原因なようです。
(htmltodatでは自力で文字コード変換をやろうというつくりになっているが
Indy10ではIndy10側で文字コード変換をやろうとしているようでそこがぶつかっている)

解決策はいくつか考えてるのですがまだ調べないといけないことが多くあり
ちょっと時間かかりそうです。
当面は、>>710>>1000のような「htmlを介さずdatを取得」する方法は使えない
ということでお願いします。(htmltodatのバージョンを0.11.9に落とせば可能ですが)

1022 1020 :2018/12/02(日) 09:58:31
>>1021
おう、まじすか。
UAの件は >>572663 ◆fnwcOWFi56さん(mirrorhenkanさん)の掲示板でやりとりされていましたが

1023 1020 :2018/12/02(日) 10:03:49
まだ投稿するつもりじゃなかったのに…
webarchiveに拾いに行くのでちょっと時間かかりそうです

1024 1020 :2018/12/02(日) 12:09:59
…気をとりなおして。(さっきのは半/全キーとTABを押し間違ったらしい…)
>>1021
UAの件は >>572 の直前に
663 ◆fnwcOWFi56さん(mirrorhenkanさん)の掲示板でやりとりされていましたが
わいわいかきこ、まるごと無くなりましたからね…
>>911 というのがあったんでwebarchiveに探しに行ったんですが、どうやらないようです
もしローカルにdatが残っていらっしゃるなら
メモ4
ttp://yy14.kakiko.com/test/read.cgi/mirror/1213700846/109-119
を見て頂ければ。(しかし、もう10年も前とは)

文字化けの件は私の側でできることは今のところない、でいいのかな
別にdat変換してないのでhtmltodatでなくてもいいんですが
私みたいにwget使っちゃうような人はともかく
初心者がUser-Agentを任意のものに変更するのにこれ以上簡単な方法が思いつきません
(上のmirrorhenkanさんの掲示板に出てきたmimizun.jsとかgetlog.wsfとか今でもあるんだろうか)
まあみみずんを読むのは >>1019 でできるようなので、なんとかなるでしょう


新着レスの表示


名前: E-mail(省略可)

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

■ したらば のおすすめアイテム ■

小林さんちのメイドラゴン : 1 (アクションコミックス) - クール教信者


この欄のアイテムは掲示板管理メニューから自由に変更可能です。


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