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

htmltodatサポートスレッド

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


新着レスの表示


名前: E-mail(省略可)

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

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

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

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