[過去ログ] Vue vs React vs Angular Part.3 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
677: 2020/06/07(日)18:24 ID:HceqIAWH(1/42) AAS
>>675
そんな狭い気持ちで、板違いスレに居るの?
680: 2020/06/07(日)18:42 ID:HceqIAWH(2/42) AAS
クルクル禁止ってことだろ。
681: 2020/06/07(日)18:56 ID:HceqIAWH(3/42) AAS
おまえらだって、クルクルすんな!こらあああ!と思うことあるだろ?
684: 2020/06/07(日)19:20 ID:HceqIAWH(4/42) AAS
閲覧者の立場で言わせてもらうとjQueryのほうが良いな。
クルクルしないから。
688: 2020/06/07(日)19:30 ID:HceqIAWH(5/42) AAS
いいえ、このスレだけ辺境の地です。
690: 2020/06/07(日)19:37 ID:HceqIAWH(6/42) AAS
ヲイヲイ俺のせいにすんなよ。
俺の説得に応じてスレ民が同意してくれたんだ。
暖かい良いスレだと思ったよ。
694
(1): 2020/06/07(日)19:59 ID:HceqIAWH(7/42) AAS
ところでHTMLの生成って何ミリ秒までなら許されるの?
696: 2020/06/07(日)20:03 ID:HceqIAWH(8/42) AAS
>>695
含まれない。
HTML5パーサー書いてるので、単純に解析と直列化にどの程度の時間が許されるか知りたい。
699: 2020/06/07(日)20:10 ID:HceqIAWH(9/42) AAS
俺の考えでは、文字列の結合によるHTML生成は速い、ツリーを構築するとコンポーネント化に有利。
こんな感じなんだよな。
それでパーサー書いたんだけど、WHATWG仕様はどうやら実在の実装を基に書かれてるらしく、仕様通りに書いただけでキッチリ動作してる。
しめしめと思ってるわけ。
700: 2020/06/07(日)20:11 ID:HceqIAWH(10/42) AAS
コンポーネント化に有利と言っても、具体的な案があるわけじゃないんだけどな。
702: 2020/06/07(日)20:12 ID:HceqIAWH(11/42) AAS
言語はC++なんだ。
サーバーで使おうと思ってな。
まあ具体的にサーバーで何しようとかは無いのだが。
703: 2020/06/07(日)20:16 ID:HceqIAWH(12/42) AAS
あと、ブラウザで編集されてPOSTされてきたHTML文字列を安全な形に修正するときどうしたら良いか?と考えたら、根本的にはブラウザと同じアルゴリズムで解析されないとダメだ(WHATWG仕様もそう述べている)ってなって、パーサー書いた。
706: 2020/06/07(日)20:17 ID:HceqIAWH(13/42) AAS
いやもう書いちゃったから。
707
(1): 2020/06/07(日)20:17 ID:HceqIAWH(14/42) AAS
メモアプリとかあるだろ。
710: 2020/06/07(日)20:18 ID:HceqIAWH(15/42) AAS
おれ今一番欲しいアプリがMDじゃないメモアプリだからな。
713
(1): 2020/06/07(日)20:20 ID:HceqIAWH(16/42) AAS
それが違うのよ。
WHATWG仕様でも述べてるから読んでみ。
同じアルゴリズムで解析されることが最初の一歩なのよ。
716
(1): 2020/06/07(日)20:21 ID:HceqIAWH(17/42) AAS
>>714
WHATWG仕様はその辺も考えられてる。
718
(1): 2020/06/07(日)20:24 ID:HceqIAWH(18/42) AAS
>>715
だいぶ置き換え文字に代わるんじゃないか?
<html><head></head><body></body><html>

WHATWG仕様は、どのような入力が与えられた場合でも、この構造は必ず作られるようになってるぞ。
720: 2020/06/07(日)20:26 ID:HceqIAWH(19/42) AAS
>>717
完全なテストについては悩んでるんだよな。
WHATWG仕様のHTMLパーサーとしてはGoogle Gumboがあるんだけど、これと比較して良いものかどうか。
Google Gumboも論理的なテストを行えていない。
ここが悩みどころだな。
721
(1): 2020/06/07(日)20:27 ID:HceqIAWH(20/42) AAS
>>719
それが仕様通りの動作。
ちなみに、Chromeがほぼほぼ仕様通りの実装になっているので、パーサーとしてはそこまでだろうな。
723: 2020/06/07(日)20:30 ID:HceqIAWH(21/42) AAS
>>722
ユーザーがHTMLを閲覧する前に一度解析されていないと危険と俺は考えてる。
木に解析されたうえでホワイトリスト形式で危険な部分を取り除き、その後、ユーザーが閲覧できる。
こう考えたわけよ。
724: 2020/06/07(日)20:32 ID:HceqIAWH(22/42) AAS
解析されるときに、ユーザーが使うブラウザと同一のアルゴリズムが用いられないと、その差異が攻撃に用いられる。
こう考えて、俺は仕様通りにこだわった。
まあそういうわけだ。

みんな話題に入って来いよ。
725: 2020/06/07(日)20:34 ID:HceqIAWH(23/42) AAS
どうよ?これからはHTMLパーサーの時代じゃないか?
727: 2020/06/07(日)20:38 ID:HceqIAWH(24/42) AAS
ちなみに俺のパーサーはDOM実装を選びません。
小さなTraitsによってDOMとのつなぎ込みを行うので、どのようなDOM実装ともつなぎこむことが出来ます。
その点がGoogle Gumboより優れている点。
劣っている点はメモリー効率。
まあ狙ってる用途が違うんだろな。
729: 2020/06/07(日)20:41 ID:HceqIAWH(25/42) AAS
>>726
いや、サーバ用のパーサーなので、ユーザーのブラウザに不正なHTMLを送らないように解析するんだよ。
例えば掲示板でHTMLが使えるようにすると、ブラウザがHTMLを送ってくるだろ。
コイツをサーバー側で綺麗にするわけよ。
その後、ほかのユーザーのブラウザでも閲覧されるだろ?掲示板だから。
まあそんな用途にも使えるようにと考えたわけ。
具体的に作るものが決まってるわけじゃないんだけどな。
730: 2020/06/07(日)20:42 ID:HceqIAWH(26/42) AAS
こいつはいけるぞ!ふぉおおおお!
732: 2020/06/07(日)20:42 ID:HceqIAWH(27/42) AAS
ちなみにまだパーサーしか書いていないので、道のりは遠い。
733: 2020/06/07(日)20:43 ID:HceqIAWH(28/42) AAS
>>731
何言ってんのかわからん。
もう少し詳しく。
734
(2): 2020/06/07(日)20:47 ID:HceqIAWH(29/42) AAS
ちなみにchar8_t記念でユニコード内自由設計といたしました。
UTF-8、UTF-16、UTF-32お好きなコードを選べます。
char8_tはまだお預けですが。
オマケでつけるとしたら何が良いですか?
736: 2020/06/07(日)20:51 ID:HceqIAWH(30/42) AAS
WHATWG Encoding仕様も実装した。
でも、HTML5パーサーをプッシュ型に実装したけど、Encoding仕様はプッシュ型に出来なかった。
ここ悩んでる。
もしも、HTML編集ソフトに使われるとしたら、プッシュ型は必須だと思う。
行番号とか使用外のモノはパーサーに組み込みたくないから。
(Google Gumboは行番号も管理してる)
でも僕のパーサーはC++だからね。
C++ぱうあ〜〜〜ふぉおおおおおお!したいので、遺伝子組み換え自由!にしたい。
たとえ遅くなったとしても!ふぉおおおおおお!
というわけで悩むううウウウ。
737: 2020/06/07(日)20:53 ID:HceqIAWH(31/42) AAS
>>735
使われることによって洗練されていく。
おまえも使え。
おまえもすでに俺のパーサーにかかわっている。
おまえの名前もクレジットに入る。
なぜなら相談に乗ったからだ。
責任を果たせ。
739: 2020/06/07(日)21:10 ID:HceqIAWH(32/42) AAS
部分木のコピーアルゴリズムとか色々考えたぞ。
もちろん実装した。
また俺は賢くなった。
ありがとうHTML、ありがとう木。
740: 2020/06/07(日)21:30 ID:HceqIAWH(33/42) AAS
次は何を実装すればいいのか。
アプリコンテナとしてのHTTPサーバーに行けば、とりあえず動くものが作れて楽しいけど、WHATWGから離れてまた戻ってくると、頭の切り替えコストを浪費しそう。
742: 2020/06/07(日)22:24 ID:HceqIAWH(34/42) AAS
ウェブ制作管理板にですか?
743: 2020/06/07(日)22:28 ID:HceqIAWH(35/42) AAS
立てたらリンク張ってくださいね。
745
(1): 2020/06/07(日)22:31 ID:HceqIAWH(36/42) AAS
それは手に負えそうにないですね。
746: 2020/06/07(日)22:32 ID:HceqIAWH(37/42) AAS
洗剤かトイレットペーパーあたりで勘弁してもらえないでしょうか?
747: 2020/06/07(日)22:33 ID:HceqIAWH(38/42) AAS
ホントに困ってるなら別スレに行きますが。
もしかしてホントに困ってる?
752: 2020/06/07(日)23:45 ID:HceqIAWH(39/42) AAS
(HTMLパーサーの話題もOK)って入れておいて。
753: 2020/06/07(日)23:45 ID:HceqIAWH(40/42) AAS
C++でもHTMLしたい!
わかってくれよ!
754: 2020/06/07(日)23:48 ID:HceqIAWH(41/42) AAS
これは切実な問題ですよ?
C++屋さんはあまりHTMLに詳しくない。
おまえらは詳しい。
寄生させてくれよ。
先っぽだけやし、ええやん?
757
(1): 2020/06/07(日)23:59 ID:HceqIAWH(42/42) AAS
サーバーサイドで動かしたいんだよね。
ブラウザで動くのはJavascriptで十分だと思ってる。
HTMLのスクレイピング、サニタイジング、部品化などもやりたい。
今できてるのは、パーサーだけ。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.042s