如何用 Python 快速抓取 Google 搜尋?

如何用 Python 快速抓取 Google 搜尋?

如何用 Python 快速抓取 Google 搜尋?

文章釋出於公號【數智物語】 (ID:decision_engine),關注公號不錯過每一篇乾貨。

作者 | linksc

譯者 | 彎月,責編 | 郭芮

本文是透過 requests 和 Beautiful Soup 抓取 Google 搜尋的快速指南。

如何用 Python 快速抓取 Google 搜尋?

以下為譯文:

自從2011年 Google Web Search API 被棄用以來,我一直在尋找其他的方法來抓取Google。我需要一種方法,讓我的 Python 指令碼從 Google 搜尋中獲取連結。於是,我自己想出了一種方法,而本文正是透過 requests 和 Beautiful Soup 抓取 Google 搜尋的快速指南。

首先,讓我們來安裝一些依賴項。請將以下內容儲存成文字檔案 requirements。txt:

requests

bs4

接下來,執行 pip install -r requirements。txt 命令來安裝依賴項。然後將其匯入到你的指令碼中。

import urllib

import requests

from bs4 import BeautifulSoup

為了執行搜尋,你需要在URL中為 Google 提供查詢引數。此外,所有空格都必須用+代替。為了構建URL,我們需要設定正確的查詢格式,並其放入q引數中。

query = “hackernoon How To Scrape Google With Python”

query = query。replace(‘ ’, ‘+’)

URL = f“https://google。com/search?q={query}”

Google 會針對移動裝置和桌上型電腦返回不同的搜尋結果。因此,我們需要指定適當的使用者代理。

# desktop user-agent

USER_AGENT = “Mozilla/5。0 (Macintosh; Intel Mac OS X 10。14; rv:65。0) Gecko/20100101 Firefox/65。0”

# mobile user-agent

MOBILE_USER_AGENT = “Mozilla/5。0 (Linux; Android 7。0; SM-G930V Build/NRD90M) AppleWebKit/537。36 (KHTML, like Gecko) Chrome/59。0。3071。125 Mobile Safari/537。36”

傳送請求很簡單。但是,requests需要將 user-agent 放在請求的頭部。為了設定正確的頭部,我們必須傳給headers一個字典。

headers = {“user-agent” : MOBILE_USER_AGENT}

resp = requests。get(URL, headers=headers)

接下來,我們需要檢查請求是否成功。最簡單的方法是檢查狀態碼。如果返回200,則表示成功。然後,我們需要將其放入 Beautiful Soup 中以解析內容。

if resp。status_code == 200:

soup = BeautifulSoup(resp。content, “html。parser”)

接下來是解析資料,並從頁面提取所有的連結。我們可以利用 Beautiful Soup 簡單地完成這項工作。在便利每個連結時,我們需要將結果儲存到一個列表中。

results = []

for g in soup。find_all(‘div’, class_=‘r’):

anchors = g。find_all(‘a’)

if anchors:

link = anchors[0][‘href’]

title = g。find(‘h3’)。text

item = {

“title”: title,

“link”: link

}

results。append(item)

print(results)

這樣就可以了。這個指令碼非常簡單,而且容易出錯。但至少它能帶你入門,從此你就可以編寫自己的 Google 爬蟲了。你可以從 GitHub上下載整個指令碼,地址是:https://github。com/getlinksc/scrape_google。

原文:

https://

hackernoon。com/how-to-s

crape-google-with-python-bo7d2tal

本文為 CSDN 翻譯,轉載請註明來源出處。

如何用 Python 快速抓取 Google 搜尋?

如何用 Python 快速抓取 Google 搜尋?

風鳥企業負面資訊免費查詢平臺:

http://www。

yansu。net。cn/

如何用 Python 快速抓取 Google 搜尋?

星標我,每天多一點智慧

如何用 Python 快速抓取 Google 搜尋?

如何用 Python 快速抓取 Google 搜尋?