クロールされたページからさまざまな種類のデータを抽出するためにさまざまなクエリを実行できる必要があるクローラーを作成しようとしています。私はデータを抽出するために CsQuery を調べてきました。
h4:contains('文字列')
私の問題は、次のような複雑なクエリを評価できる必要があることです。
["h4:contains('textstring')"].Parent().Parent().Find("div").Find("span").Text();
私はまだ素晴らしい解決策を見つけていません。CsQuery は上記を簡単に実行できますが、コードに記述した場合に限り、データベースに保存されたクエリを実行できるようにする必要があるため、クエリを動的に読み込んで実行できる必要があります。私の現在の最善のアイデアは、再帰関数が一度に 1 ドットずつステートメントを通過するようにすることですが、上記のクエリを実行できるようにするために関数を 6 回呼び出すことになります。また、CsQuery に既に存在する機能を作成することになるようですが、問題を解決するためのより洗練された方法がわかりません。
どんなアイデアでも大歓迎です。