0

Google で 1 つの特定のページを分析する必要があり、そのページに直接リンクしています。そのリンクを IE に貼り付けると、正常に動作します。

今、私はこのプロセスを自動化しようとしました

WebClient w = new WebClient();
                string s = w.DownloadString("https://www.google.com/#q=" + MYSEARCHSTRING + "&start=0");

しかし、ページを「s」に正しくロードしていません

4

1 に答える 1

2

コードで URL をロードする場合、「#」文字を使用することはできません。これはフラグメント識別子であり、Google は JavaScript を使用して検索を実行するため、ブラウザは各ページをリクエストしなくなります。

これを行うには、古い検索構文を使用する必要があります。https://www.google.com/search?q=

より良い解決策は、API を使用して検索することかもしれません: Custom Search、それを使用すると、結果の解析がより適切になり、Google でより適切になります。

注意すべきことの 1 つは、結果の使用方法が利用規約に適合していることを確認することです。API を使用すると、それを悪用することも回避できます。私は検索用語をこれまで見たことがないので、どのような制限があるかは不明です。

于 2012-05-05T04:05:57.887 に答える