Страницы: 1
RSS
too many requests как обойти PQ - как вставить задержку в запрос, Помогите разобраться, пожалуйста
 
Добрый день.

Получаю большой массив данных по API с Озона. Лимит 1000 строк, есть офсет, нет информации сколько строчек в отчете, постоянно натыкаюсь на too many requests как обойти. Данные - функция, в которую передаю даты начала и конца периода (от и до) и офсет по списку и получаю очередную 1000 строк по смещению, как я понял на 7 обращении к озону выскакивает too many requests. Возможно я нубас, но думаю надо вставить задержку между обращениями, но как это сделать, не понимаю.

let
   Источник = {0..6},
   #"Преобразовано в таблицу" = Table.FromList(Источник, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
   #"Добавлен пользовательский объект" = Table.AddColumn(#"Преобразовано в таблицу", "Офсет", each [Column1]*1000),
   #"Измененный тип" = Table.TransformColumnTypes(#"Добавлен пользовательский объект",{{"Офсет", type text}}),
   #"Добавлен пользовательский объект1" = Table.AddColumn(#"Измененный тип", "Пользовательский.1", each Данные (Период [Столбец2] {0}, Период [Столбец4] {0}, [Офсет])),
   #"Развернутый элемент Пользовательский.1" = Table.ExpandTableColumn(#"Добавлен пользовательский объект1", "Пользовательский.1", {"id", "name", "Бренд", "Пользовательский", "Атрибут", "Артикул", "Значение"}, {"id", "name", "Бренд", "Пользовательский.2", "Атрибут", "Артикул", "Значение"}),
   #"Строки с примененным фильтром" = Table.SelectRows(#"Развернутый элемент Пользовательский.1", each ([id] <> null)),
   #"Удаленные столбцы" = Table.RemoveColumns(#"Строки с примененным фильтром",{"Column1", "Пользовательский"}),
   #"Измененный тип1" = Table.TransformColumnTypes(#"Удаленные столбцы",{{"Значение", type number}})
in
   #"Измененный тип1"
Изменено: Михаил Леонтьев - 15.09.2022 18:30:46
 
Добрый!
Цитата
Михаил Леонтьев написал:
вставить задержку между обращениями
Код
Function.InvokeAfter()
 
Цитата
написал:
вставить задержку между обращениями
посмотрите здесь:

https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=151974&a...
 
Михаил Леонтьев,
Код
 Response = Function.InvokeAfter(() => Json.Document(Web.Contents(URL, [Content = Text.ToBinary(Body), Headers = Headers])), #duration(0, 0, 0, 0.2))
 
Цитата
написал:
Михаил Леонтьев,  
Код
    [URL=#]?[/URL]       1      Response =   Function  .InvokeAfter(() => Json.Document(Web.Contents(URL, [Content = Text.ToBinary(Body), Headers = Headers])), #duration(0, 0, 0, 0.2))   
 
Всем спасибо, у меня и в мыслях не было задержку в функцию засунуть.
Страницы: 1
Наверх