1
私はbs4でGoogle検索からリンクを取得しようとしていますが、私のコードは空のセットを返しています。すべての結果のためのリンクは、最初の結果のためだけのリンクではありませんどこPython 2.7 BeautifulSoup4が空のセットを返しています
import requests
from bs4 import BeautifulSoup
website = "https://www.google.co.uk/?gws_rd=ssl#q=science"
response=requests.get(website)
soup = BeautifulSoup(response.content)
link_info = soup.find_all("h3", {class": "r"})
print link_info
<h3 class="r">
です。
私は[]
を取得しました。これは、<div class="rc">
を含めてリクエストしようとしている他のクラスのものです。 (のhttp:ここ
は私が後だ何のPRT SCで、
[Googleのクロールが動作しませんScrapy]の可能性の重複を使用してみてください://stackoverflow.com/questions/33395133/scrapy-google-crawl-doesnt-work) – eLRuLL
クエリはGETではなくPOSTリクエストです。 POST要求を使用して、下記のようにポストパラメータにqを入れる必要があります。それをより良く理解するには、ブラウザでinspect要素を開き、[ネットワーク]タブを開いてから要求を送信します。 URLヒットのリストが表示されます。そのうちの1つをクリックすると、あなたのリクエストについての詳細が表示されます。 params、headers、cookiesのようなオプションがあります。 Paramsは、サーバーに送信されるポストパラメーターです。 GET要求の場合、通常はパラメータはありません – theBuzzyCoder