2

私はいくつかのWebデータ分類タスクを実行しており、Webページで参照されているcssまたはjavascriptを考慮せずに、Webブラウザーに表示されるHTML要素の座標を取得できるかどうかを考えていました。

のプログラミング言語はC++であり、数百万ページの結果が必要なので、高速である必要があります。Webブラウザコントロールでページをレンダリングし、さまざまなhtmlタグの位置を照会できるMicrosoftCOMコンポーネントがあることを私は知っています。しかし、これは最初にページ全体をレンダリングするため、多くの時間がかかるため、私の場合には適していません。

だから私が知ったように、おそらくこれに使用できるオープンソースのレイアウトエンジンWebKit、Geckoがあります。しかし、それは巨大なコードであり、誰かが以前に行った適切なクラスやモジュール、または以前に行った/同様の作業を調べるように指示する必要があります。また、既存のコードを複数のスレッドで使用できるようにカスタマイズして高速化する場合は、皆さんが良い選択だと思うことを教えてください。

ありがとう

4

1 に答える 1

1

一般に、異なるページ レンダリング エンジンは独自の方法で html をレンダリングし、結果が異なることがわかります。

問題は、具体的なブラウザー エンジンに固執する場合、どうにかしてこのエンジンをプロジェクトに取り込み、エンジンのインターフェイスを使用してこれらの座標を取得することです。ただし、大量のドキュメントを読み、何千ものファイルをクロールしなければならないという単純な理由から、ちょっと大変な作業です。

正しいアプローチは、選択したページ レンダリング エンジンに固有の場所にこのタスクを投稿することだと思います。(ヤモリ/ウェブキット/...)

MS 固有のものに固執したい場合は、その方が簡単だと思いますが、見たいクラス名やコード チャンクなどは役に立ちません。この場合、おそらく他の誰かがあなたを導くことができます。

于 2010-04-24T20:17:23.743 に答える