Googleで検索するときに最初のページから画像を取得するにはどうすればよいですか?

ラウリナスG

通常、Googleを使用して都市を検索した後、右側に画像と地図が表示されたWikipediaページの一部があります。この画像にアクセスする方法を教えてもらえますか?ダウンロード方法を知っておく必要があります。

テルミニンジャ

実際、メイン画像(右側の地図画像に付属)がウィキペディアからのものであることはめったにないため、ウィキペディアAPIを使用して取得することはできません。実際のメイン画像にアクセスしたい場合は、これを使用できます。

private static void GetGoogleImage(string word)
{
    // make an HTTP Get request
    var request = (HttpWebRequest)WebRequest.Create("https://www.google.com.pg/search?q=" + word);
    request.UserAgent = "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36";
    using (var webResponse = (HttpWebResponse)request.GetResponse())
    {
        using (var reader = new StreamReader(webResponse.GetResponseStream()))
        {
            // get all images with base64 string
            var matches = Regex.Matches(reader.ReadToEnd(), @"'data:image/jpeg;base64,([^,']*)'");
            if (matches.Count > 0)
            {
                // get the image with the max height
                var bytes = matches.Cast<Match>()
                    .Select(x => Convert.FromBase64String(x.Groups[1].Value.Replace("\\75", "=").Replace("\\075", "=")))
                    .OrderBy(x => Image.FromStream(new MemoryStream(x, false)).Height).Last();

                // save the image as 'image.jpg'
                using (var imageFile = new FileStream("image.jpg", FileMode.Create))
                {
                    imageFile.Write(bytes, 0, bytes.Length);
                    imageFile.Flush();
                }
            }
        }
    }
}

これは私にとってはうまくいき、常に実際のメイン画像を返します(存在する場合)。例えば、GetGoogleImage("New York")私に与えてデータを:画像/ JPEGを、base64で、/ 9J / 4AAQSkZJRg ...

応答としてすべてのbase64文字列画像からメインの高さが最大であるという事実を使用します。したがって、高さで並べ替えて最後の画像を選択するだけで済みます。必要に応じて、ここで最小画像高さも確認できます。への置き換え\075=は、base64のパディングが必要です

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ページに最初のGoogle画像を自動的に表示するにはどうすればよいですか?

分類Dev

Google画像検索からJSON応答を取得するにはどうすればよいですか?

分類Dev

RailsでCarrierwaveを使用してPDFの最初のページを画像として取得するにはどうすればよいですか?

分類Dev

検索ページに戻るにはどうすればよいですか?

分類Dev

Chrome 33の新しいタブページでGoogle検索と小さいタイルを削除するにはどうすればよいですか?

分類Dev

PythonSeleniumテスト。Googleホームページの検索ボックスから自動提案を抽出するにはどうすればよいですか?

分類Dev

Laravelで2番目のモデルから最初のモデルまで検索データを取得するにはどうすればよいですか?

分類Dev

ボタン付きのhtmlページとpython付きのflaskを使用してmongodbを検索するにはどうすればよいですか?

分類Dev

Google画像検索:逆画像検索URLを作成するにはどうすればよいですか?

分類Dev

Facebookページからすべての画像を抽出するにはどうすればよいですか?

分類Dev

別のページから要素を取得するときにStaleElementReferenceErrorを回避するにはどうすればよいですか?

分類Dev

画像を取得して次のページに表示するにはどうすればよいですか?

分類Dev

重複を検索するときにストリームの最初の出現を削除するにはどうすればよいですか?

分類Dev

特定のグーグル検索結果ページのページソースを取得するにはどうすればよいですか?

分類Dev

Googleの検索結果に検索バーを追加するにはどうすればよいですか?

分類Dev

検索結果ページから画像をクリックするにはどうすればよいですか

分類Dev

最新の画像が最初に表示されるように画像をWebページにアップロードするにはどうすればよいですか?

分類Dev

MVCページ間を移動するときに検索値を維持するにはどうすればよいですか?

分類Dev

iMacrosのウェブページから画像を保存するにはどうすればよいですか?

分類Dev

すべてのリンクをページから取得するにはどうすればよいですか?

分類Dev

VBAを使用してGoogle検索の最初の検索結果リンクを取得するにはどうすればよいですか?

分類Dev

反復から最初の画像のみを取得するにはどうすればよいですか?

分類Dev

検索フォームをショップページとカテゴリページのみに追加するにはどうすればよいですか?

分類Dev

Azure検索からすべての結果を取得するにはどうすればよいですか?

分類Dev

ページが最初に親ビューに読み込まれるときに、部分ビューから最初の行「名前」の値を取得するにはどうすればよいですか?

分類Dev

Google+でページを共有するときに表示画像を設定するにはどうすればよいですか?

分類Dev

Facebookでページを共有するときに使用するデフォルトの画像を設定するにはどうすればよいですか?

分類Dev

ajaxから現在のページのURLIDを取得するにはどうすればよいですか?

分類Dev

mysql で最初の 10 レコードだけを検索するにはどうすればよいですか

Related 関連記事

  1. 1

    ページに最初のGoogle画像を自動的に表示するにはどうすればよいですか?

  2. 2

    Google画像検索からJSON応答を取得するにはどうすればよいですか?

  3. 3

    RailsでCarrierwaveを使用してPDFの最初のページを画像として取得するにはどうすればよいですか?

  4. 4

    検索ページに戻るにはどうすればよいですか?

  5. 5

    Chrome 33の新しいタブページでGoogle検索と小さいタイルを削除するにはどうすればよいですか?

  6. 6

    PythonSeleniumテスト。Googleホームページの検索ボックスから自動提案を抽出するにはどうすればよいですか?

  7. 7

    Laravelで2番目のモデルから最初のモデルまで検索データを取得するにはどうすればよいですか?

  8. 8

    ボタン付きのhtmlページとpython付きのflaskを使用してmongodbを検索するにはどうすればよいですか?

  9. 9

    Google画像検索:逆画像検索URLを作成するにはどうすればよいですか?

  10. 10

    Facebookページからすべての画像を抽出するにはどうすればよいですか?

  11. 11

    別のページから要素を取得するときにStaleElementReferenceErrorを回避するにはどうすればよいですか?

  12. 12

    画像を取得して次のページに表示するにはどうすればよいですか?

  13. 13

    重複を検索するときにストリームの最初の出現を削除するにはどうすればよいですか?

  14. 14

    特定のグーグル検索結果ページのページソースを取得するにはどうすればよいですか?

  15. 15

    Googleの検索結果に検索バーを追加するにはどうすればよいですか?

  16. 16

    検索結果ページから画像をクリックするにはどうすればよいですか

  17. 17

    最新の画像が最初に表示されるように画像をWebページにアップロードするにはどうすればよいですか?

  18. 18

    MVCページ間を移動するときに検索値を維持するにはどうすればよいですか?

  19. 19

    iMacrosのウェブページから画像を保存するにはどうすればよいですか?

  20. 20

    すべてのリンクをページから取得するにはどうすればよいですか?

  21. 21

    VBAを使用してGoogle検索の最初の検索結果リンクを取得するにはどうすればよいですか?

  22. 22

    反復から最初の画像のみを取得するにはどうすればよいですか?

  23. 23

    検索フォームをショップページとカテゴリページのみに追加するにはどうすればよいですか?

  24. 24

    Azure検索からすべての結果を取得するにはどうすればよいですか?

  25. 25

    ページが最初に親ビューに読み込まれるときに、部分ビューから最初の行「名前」の値を取得するにはどうすればよいですか?

  26. 26

    Google+でページを共有するときに表示画像を設定するにはどうすればよいですか?

  27. 27

    Facebookでページを共有するときに使用するデフォルトの画像を設定するにはどうすればよいですか?

  28. 28

    ajaxから現在のページのURLIDを取得するにはどうすればよいですか?

  29. 29

    mysql で最初の 10 レコードだけを検索するにはどうすればよいですか

ホットタグ

アーカイブ