Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Есть сайт, у которого существует API для выгрузки пользователей в виде JSON объекта.API вызывается ссылкой типа: https://xzy.mmm.com/api/v2/admin/users?include=organizations&page%5Bnumber%5D=5&page%5Bsize%5D=100"

Это одна из 5 страниц объектов, получаемых по подобной ссылке. Образец объекта прикреплен к этой задаче. 

Задача - подргузить все 5 страниц объектов (ссылки могу вставить вручную), распарсить объекты по описанию ниже, изменить / добавить значения, сохранить как CSV.

В JSON объекте есть несколько ключей, важные из которых только в поле “data”.Есть еще поля “included”, “links”, “meta”, их можно игнорировать.

В поле data нужно извлечь значения ключей users: 

username, email, is-admin, is-service-account, two-factor.enabled, two-factor.verified, relationships.organizations.data.id

После обработки тех пользователей, у которых is-service-account : true - можно сразу отбросить из дальнейших операций.

Далее необходимо сформировать csv, который будет выглядеть так:

Username,email,is-admin,two-factor.enabled,two-factor.verified,relationships.organizations.data.id

Важный нюанс: есть пользователи, состоящие в нескольких организациях. Есть те, кто не состоит ни в какой. В случае, если пользователь состоит в нескольких организациях - нужно дублировать строки информации от пользователя по количеству организаций. Они все прописаны в том же ключе relationships.organizations.data с разными id. В готовом CSV такой пользователь должен выглядеть примерно так:

Victor, [email protected], true, true, true, IFS

Victor, [email protected], true, true, true, NIS

Victor, [email protected], true, true, true, mppTech

Количество организаций у пользователя может быть произвольным.Если у пользователя в включе relationships.organizations.data.id не прописано ничего - оставляем пустое значение в этой колонке.

Далее, значение ключа is-admin переименовываем из true в SiteAdmin. 

Если у пользователя есть хоть одна организация - ключ переименовываем в “имя-организации” + Organization owner

Используем предыдущий пример для продолжения:

Victor, [email protected], SiteAdmin, true, true, IFS Organization owner

Victor, [email protected], SiteAdmin, true, true, NIS Organization owner

Victor, [email protected], SiteAdmin, true, true, mppTech Organization owner

На выходе должен быть CSV файл со списком пользователей по примеру выше.

Пожалуйста, создайте скрипт для выполнения этой задачи на Python или PowerShell, и передайте его мне

5 лет назад
crisalid
Валерий 
40 лет
14 лет в сервисе
Был
5 лет назад

Выбранный исполнитель

Flopsi
28 лет
10 лет в сервисе
Был
4 месяца назад
5 лет назад
$100
1 день
Отличный специалист, детально вникающий в бизнес-процесс Чистый код на выходе Рекомендую
Четко поставленная задача и быстрые ответы на дополнительные вопросы. Оплата сразу после выполнения проекта. Буду рад дальнейшему сотрудничеству =) 10/10

Заявки фрилансеров

Аршак
 
40 лет
5 лет в сервисе
Был
5 лет назад
5 лет назад
Илья
 
21 год
5 лет в сервисе
Был
5 лет назад
5 лет назад
Рустам
 
38 лет
5 лет в сервисе
Был
4 года назад
1 отзыв
5 лет назад
Геннадий
 
28 лет
10 лет в сервисе
Был
7 месяцев назад
57 отзывов
5 лет назад
Flopsi
28 лет
10 лет в сервисе
Был
4 месяца назад
5 лет назад