

今現在、Python3でスクレイピングを学んでいて、試しにいろんなサイトをしていた際に、Yahoo検索をスクレイピングするのはグレーゾーンというのはわかっていますが、試してみたところ（何か使用したりすることはありません。）広告だけは取得できなかったみたいなので、不思議に思いました。  
もともとはrequests+beautifulSoupを使って行っていたのですが、seleniumでも試したところ、できませんでした。  
そこでGoogle検索もできないのかなと思い、してみたのですが、こちらはできたようです。

Yahooの方は意図的にできないような仕組みにしているんでしょうか？  
そしたらなぜGoogleはそれを取り入れてないのかなどいろんなところが気になりました。  
またYahooの方でもできるやり方があるんでしょうか。使用せず知識として知りたいので教えていただけると嬉しいです。

追記  
こちらがrequestsを使用した左のコードです。

[code]

    import requests
    from bs4 import BeautifulSoup
    import json
    import time
    
    r = requests.get("https://search.yahoo.co.jp/search?p=格安レンタカー")
    r.raise_for_status()
    soup = BeautifulSoup(r.content, "html.parser")
    
    print(soup)
    
[/code]

こちらがseleniumで使用した際のコードです。

[code]

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    driver = webdriver.Chrome()
    
    #optionsインスタンスを生成
    options = Options()
    #オプションを設定
    options.add_argument('--headless')
    options.add_argument('--no-sandbox')
    options.add_argument('--disable-gpu')
    
    driver.get('https://search.yahoo.co.jp/search?p=格安レンタカー')
    
    drive = driver.page_source
    
    print(drive)
    
[/code]


CC BY-SA 4.0
2020-02-04T05:39:06.920
62760
2021-07-11T07:07:25.700
2020-05-16T22:56:05.857
19110
37613
question
python3 web-scraping selenium beautifulsoup python-requests
Yahoo検索のスクレイピングで広告だけが取得できない


metropolis さんより  
User-Agent を設定して requests.get() を実行するとウェブブラウザ(手元の環境では
Firefox)でアクセスした場合と同じ内容のページを取得できました。


CC BY-SA 4.0
2020-02-05T08:45:55.537
62802
2020-02-05T08:45:55.537
37613
62760
answer