0

私は、すべての会社の関連会社の Web サイトにアクセスして、html を解析し、それらをデータベースに保存する検索エンジンを作成しています。これらの Web サイトは非常に古く、HTML に準拠していません。100,000 の Web サイトのうち、約 25% は HTML が不適切で解析が困難です。悪いhtmlを修正してからコンテンツを解析するか、上記の問題に対処する解決策を考え出すac#コードを書く必要があります。アイデアに座っている場合は、実際のヒントまたはコード スニペットが役立ちます。

4

3 に答える 3

4

Html Agility Packを使用するだけです。欠陥のあるhtmlコードを解析するのはとても良いことです

于 2012-05-23T13:31:10.363 に答える
1

tagsoup パーサーを使用してください。これは C# 用のものであると確信しています。次に、パーサーが HTML DTD に準拠しているかどうかに応じて、DOM を多かれ少なかれ有効な HTML にシリアル化できます。あるいは、 HTML Tidyを使用することもできます。これにより、少なくとも最悪の障害が解消されます。

このタスクには正規表現は適用されません。

于 2012-05-23T13:36:08.697 に答える
1

一般に、ヒューリスティック主導のタグ スープパーサーの何らかの形式が使用されます。

例えば

これらは、すべてのランダムなシンボルから AST を構築するために最善を尽くすレクサーにすぎません。

于 2012-05-23T13:31:52.407 に答える