Как очистить несколько страниц с помощью Apple, я настраиваю API - PullRequest
0 голосов
/ 24 января 2019

Я пытаюсь очистить Itunes API, чтобы получить информацию обо всех подкастах, доступных в магазине Apple iTunes.В настоящее время я могу вытащить только 200 одновременно.Когда я пытаюсь получить следующие 200 подкастов в списке, я получаю те же 200, что и раньше.

https://itunes.apple.com/search?term=podcast&limit=2 https://itunes.apple.com/search?term=podcast&limit=2&offset=1

Любые предложения приветствуются.

import requests
import pandas as pd
import time
import json

url = 'https://itunes.apple.com/search?term=podcast&limit=2' 
res = requests.get(url,headers={'User-agent': 'project'})
res.status_code
current_url = None
posts = []
the_offset = 0
for _ in range(2):
    if current_url == None:
        current_url = url

    else:
        current_url = url +'&offset={}'.format(the_offset)
        res = requests.get(current_url)
    if res.status_code != 200:
        print('Error',res.status_code)
        break
    the_offset += 1
    current_dict = res.json()
    current_posts = {k:v for (k,v) in current_dict.items()}
    posts.extend(current_posts['results'])
    print(current_url)
    time.sleep(3)

1 Ответ

0 голосов
/ 24 января 2019

Попробуйте изменить параметр смещения:

results = 100
limit = 10

pages = int(results / limit)

for i in pages:
    offset = i+1
    request(offset)
...