Python 如何使用GoogleAPI刮取数据

Python 如何使用GoogleAPI刮取数据,python,google-api,web-scraping,scrapy,python-requests,Python,Google Api,Web Scraping,Scrapy,Python Requests,在最初的2,3次尝试中,它会检索所有必需的页面,但在2,3次尝试后,它不会得到任何结果。它正在返回“无”或[]。谷歌在几次尝试后就封锁了我的IP吗?有什么解决方案吗?我不确定这是否有效,但避免被不鼓励抓取的网站阻止的唯一方法是在检索网页时使用代理。 请检查如何在代码中使用代理。问题是通过使用请求和BeautifulSoup解决的 import requests def search(query, pages=4, rsz=8): url = 'https://ajax.googleap

在最初的2,3次尝试中,它会检索所有必需的页面,但在2,3次尝试后,它不会得到任何结果。它正在返回“无”或[]。谷歌在几次尝试后就封锁了我的IP吗?有什么解决方案吗?

我不确定这是否有效,但避免被不鼓励抓取的网站阻止的唯一方法是在检索网页时使用代理。
请检查如何在代码中使用代理。

问题是通过使用请求和BeautifulSoup解决的

import requests

def search(query, pages=4, rsz=8):
    url = 'https://ajax.googleapis.com/ajax/services/search/web'
    params = {
        'v': 1.0,     # Version
        'q': query,   # Query string
        'rsz': rsz,   # Result set size - max 8
    }

    for s in range(0, pages*rsz+1, rsz):
        params['start'] = s
        r = requests.get(url, params=params)
        for result in r.json()['responseData']['results']:
            yield result

检查
r.status\u code
r.text
。也许有什么消息。
import requests, import BeautifulSoup
url = 'http://www.google.com/search'
payload = { 'q' : strToSearch, 'start' : str(start), 'num' : str(num) }
r = requests.get( url,params = payload, auth=('user', 'pass')) 
subSoup = BeautifulSoup( subR.text, 'html.parser' )
text = soup.get_text(separator=' ')