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

htmltodatサポートスレッド

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

691 ◆/vmukiyuzw:2012/06/15(金) 19:19:01
>>690さん
>>672の頃と比較すると、ガラガラの量が若干増えていて取り除ききれなくなってるようです。
これはまあイタチごっこみたいなもんなんで(サイト側は見栄えや使い勝手を改善しようとして
やってるんでしょうから)地道に対処していくしかないです。
とりあえずですが前処理に以下を追記してみてください。

s#<div (.|\n)*?</div>##igk


もう一度ログ速(logsoku.com)について現状をまとめ直しておくと、以下のようになると思います。
(言うまでもないかもしれませんが今後も変更の可能性がもちろんあります)

前処理:
# ガラガラを適当に除去
s#<span (.|\n)*?</span>##igk
s#<script (.|\n)*?</script>##igk
s#<div (.|\n)*?</div>##igk
# ニュー速等のアイコンを2ch形式に補正(663さんのものをアレンジ)
s#<img src="http://cdn.logsoku.com/(img.2ch.net/ico/.+?)&quot;&gt;#sssp://$1#igk
# 「〜回発言」を取り除く(663さんのものをアレンジ)
s#(ID:)<a href=.+?>(.+?)</a>(.*?)\[\d+.+?\]#$1$2$3#igk
# 後ろガラガラの除去
s#<tr (.|\n)*?</tr>##igk
# <br/>タグに対応してない専ブラへの対応
s#<br/>#<br>#igk

正規表現:
m#<a name="(\d+)"></a>\s*(?:<a href="mailto:(.+?)">|<font color=green>)<b>(.+?)</b>(?:</a>|</font>)\s*:\s*(.*?)\s*</dt>\s*<dd>\s*(.*?)\s*<br />\s<br />.*?</dd>#mik

692 ◆/vmukiyuzw:2012/06/18(月) 21:44:02
何を書いてるのか意味が伝わりにくかったかもしれませんね。

「ガラガラ」というのはこのスレを頭のほうから検索してもらえると見つかると思いますが
Javascriptやスタイルシートの記述や(最近では広告の記述も多いかな?w)等、
htmlからdatに変換するためには邪魔な要素のことを(私が)勝手にそう呼んでいます。

なぜこれが邪魔かというと、変換に使用しているbregexp.dllの暗黙の仕様、というか
正規表現自体の制限のようなもので、あまり長い文字列に正規表現を適用させようとすると
「fatal error」(致命的エラー)を起こしてしまうため、それを起こさないようできるだけ
変換対象とは関係ない文字列を前もって削除する必要があるのです。

で、それを取り除くための手段として「前処理」という事前変換機能があるので
これを使ってちまちまと削除しているわけです。


新着レスの表示


名前: E-mail(省略可)

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

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

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

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