【问题标题】:How to stop requesting google geocoding api when website is being crawled抓取网站时如何停止请求谷歌地理编码api
【发布时间】:2016-01-21 14:30:59
【问题描述】:

我正在使用 Google Geocoding API,网站目前没有太多流量,但已超过每天 2500 个请求的每日限制。 我查了一下,发现是因为网站被各种网站/搜索引擎爬取,包括谷歌爬取,超出了每日限额。

在抓取网站时,有什么方法可以阻止向 Google API 生成的请求?或者,如果某些网站(包括 Google)正在抓取该网站,我们是否可以通过任何方式停止执行该代码?

【问题讨论】:

  • 在发布问题时分享您已经尝试过但没有奏效的内容很有用。

标签: google-geocoding-api


【解决方案1】:

好吧,我的代码是这样的:

def geocoding(address):
    print(address)
    time.sleep(0.2)
    g=geocoder.google(address)
    return g.latlng

def main():
    cases()
    for count in range(len(addresses)):
        code= geocoding(addresses[count])
        print code
        try:
            latitude.append(code[0])
             longitude.append(code[1])
        except:
            latitude.append("")
            longitude.append("")           
        writeExcel()

如你所见,我做了一个循环 address, latitute 和 longituitde 是数组,write excels 将数组放入excel

如果你创建了一个检查,你可以用一个 break 来停止循环:

def main():
    cases()
    for count in range(len(addresses)):
        code= geocoding(addresses[count])
        if code[0]=="":
           break
        print code
        try:
            latitude.append(code[0])
            longitude.append(code[1])
        except:
            latitude.append("")
            longitude.append("")           
        writeExcel()

【讨论】:

    猜你喜欢
    • 2021-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    相关资源
    最近更新 更多