如何使用Airtable API尽可能多地获取100行?

问题描述 投票:0回答:1

我真的是Airtable API的新手,由于某种原因,以这种方式连接API无效。

at = airtable.Airtable('Base_Key', 'Airtable_Key')

但是我让它以这种方式工作-

get_url = ‘https://api.airtable.com/v0/BASE_ID/TABLE_NAME’
get_headers = {
‘Authorization’: ‘Bearer API_KEY’ }

Response = requests.get(get_url, headers=get_headers)
Response_Table = Response.json()

但是,这仅获取前100条记录,并且正在阅读有关偏移量和分页的信息,但是我无法弄清楚如何将其合并到此代码中。

谢谢您的时间!

api pagination python-requests airtable
1个回答
0
投票

经过很多问题,我找到了这个解决方案。将其发布给其他面临相同问题的人。

global offset
offset = '0'
result = []

while True :
    url = "https://api.airtable.com/v0/BASE_ID/TABLE_NAME"
    querystring = {
        "view":"Published View",
        "api_key":"YOUR_KEY",
        "offset": offset}

    try :
        response= requests.get(url, params=querystring)
        response_Table = response.json()
        records = list(response_Table['records'])
        result.append(records)
        #print(records[0]['id'] , len(records))

        try : 
            offset = response_Table['offset']
            #print(offset)

        except Exception as ex:
            #print(ex , offset)
            break

    except error as e:
        print(e)
© www.soinside.com 2019 - 2024. All rights reserved.