Модуль PortalPy

В этом разделе справки перечислены все классы и методы модуля PortalPy, которые могут использоваться для записи административных скриптов на Portal for ArcGIS.

Класс: Portal

Объект, представляющий URL-адрес подключения к порталу. Чтобы обработать объект Portal, выполните такой код:

PortalPy.Portal(portalUrl, user, password)

Доступные методы Portal перечислены в разделах ниже. Перед началом работы с этими методами примите во внимание следующее:

Методы PortalPy

Доступные методы Portal описаны ниже.

_init_

Конструктор портала. Требуются URL-адрес портала и, дополнительно, имя пользователя и пароль.

_init_(self, url, username=None, password=None, key_file=None, cert_file=None, expiration=60, referer=None, proxy_host=None, proxy_port=None, connection=None, workdir=r'c:\users\davi3690\appdata\local\temp\2')

add_group_users

Добавление пользователей в указанную группу. Этот метод можно использовать только если пользователь объекта Portal является либо администратором всего портала, либо исключительным владельцем группы.

add_group_users(self, user_names, group_id)

Аргументы

Параметр

Описание

user_names

обязательное, строковое (string), пользователи, разделенные запятыми

group_id

обязательное, строковое (string), задающее ID группы

Возвращаемое значение

Словарь с ключом not_added, который содержит имена пользователей, не добавленных в группу.

create_group

Создает группу и возвращает ее ID, если успешно.

create_group(self, title, tags, description=None, snippet=None, access='public', thumbnail=None, is_invitation_only=False, sort_field='avgRating', sort_order='desc', is_view_only=False)

Аргументы

Параметр

Описание

title

обязательное, строковое (string), имя группы

tags

обязательное, строковое (string), список тегов, разделенный запятыми

description

дополнительное, строковое (string), подробное описание группы

snippet

дополнительное, строковое (string), сводка группы длиной не более 250 знаков

access

дополнительное, строковое (string), может иметь значения private, public или org

thumbnail

дополнительное, строковое (string), URL-адрес изображения группы

isInvitationOnly

дополнительное булево (boolean) значение, задает, может ли пользователь присоединяться по запросу

sort_field

дополнительное, строковое (string), задает сортировку опубликованных в группе элементов

sort_order

дополнительное, строковое (string), значения asc и desc соответствуют сортировке по возрастанию и по убыванию

is_view_only

дополнительное булево (boolean) значение, задает возможность поиска группы

Возвращаемое значение

Строковое (string), являющееся ID группы.

create_group_from_dict

Создает группу и возвращает ее ID, если успешно. В большинстве случаев рекомендуется использовать create_group, т.к. этот метод может взять групповой словарь, возвращенный другим запросом PortalPy, и скопировать его.

create_group_from_dict(self, group, thumbnail=None)

Аргументы

Параметр

Описание

group

объект dict

thumbnail

URL-адрес изображения

Пример:

create_group({'title': 'Test', 'access':'public'})

delete_group

Удаляет группу.

delete_group(self, group_id)

Аргументы

Параметр

Описание

group_id

Строка с id группы, которая будет удалена.

Возвращаемое значение

Булево (boolean) значение, указывающее, успешно ли выполнена операция.

delete_user

Удаляет пользователя портала, дополнительно удаляет или переназначает группы и элементы. Вы не можете удалить пользователя портала, если ему принадлежат группы или элементы. Если вы выбрали каскадный режим, эти элементы и группы будут переназначены пользователю, указанному опцией reassign_to. Если нет, удаление может быть успешным или неудачным, в зависимости от того, были ли ранее перемещены элементы и группы пользователя.

При каскадном режиме метод может удалить до 10000 элементов. Если пользователю принадлежат более 10000 элементов, метод не сработает.

delete_user(self, username, cascade=False, reassign_to=None)

Аргументы

Параметр

Описание

username

обязательное, строковое (string), имя пользователя

cascade

дополнительное булево (boolean) значение, true означает переназначение элементов и групп

reassign_to

дополнительное, строковое (string), новый владелец элементов и групп

Возвращаемое значение

Булево (boolean) значение, указывающее, успешно ли выполнена операция.

generate_token

Генерирует и возвращает новый токен, но не выполняет повторный вход. Этот метод не требуется при использовании класса Portal для запросов к порталу. Он предназначен для обращений к порталу извне класса Portal.

Портал использует механизм авторизации с помощью токенов, когда пользователь указывает свои учетные данные и для обращений применяется краткосрочный токен. Большинство вызовов к ArcGIS REST API требуют токена, и его можно присоединить к данным запросам.

generate_token(self, username, password, expiration=60)

Аргументы

Параметр

Описание

username

обязательное, строковое (string), имя пользователя

password

обязательное, строковое (string), пароль пользователя

expiration

дополнительное целочисленное (integer), число минут до окончания действия токена

Возвращаемое значение

Строка с токеном.

get_group

Возвращает сведения о группе для заданного group_id.

get_group(self, group_id)

Аргументы

Параметр

Описание

group_id

обязательное, строковое (string), обозначение группы

Возвращаемое значение

Объект dictionary со сведениями о группе. Ключи в объекте dictionary могут содержать:

Параметр

Описание

title

имя группы

isInvitationOnly

если задано true, пользователи не могут подавать заявку на присоединение к группе

owner

имя владельца группы

description

описание группы

snippet

Краткая сводка о группе

tags

пользовательские теги, описывающие группу

phone

контактная информация группы

thumbnail

имя файла относительно http://<community-url>/groups/<groupId>/info

created

время создания группы, в миллисекундах с 1 января 1970

modified

время последнего изменения группы, в миллисекундах с 1 января 1970

access

может иметь значения private, public или org

userMembership

словарь с ключами username и memberType

memberType

обеспечивает доступ вызывающему пользователю (owner, admin, member, none)

get_group_members

Возвращает участников указанной группы.

get_group_members(self, group_id)

Аргументы

Параметр

Описание

group_id

обязательное, строковое (string), обозначение группы

Возвращаемое значение

Словарь с ключами owner, admins и users.

Параметр

Описание

owner

строковое значение, владелец группы

admins

список строк, обычно те же, что и owner

users

список строк, участники группы

Пример:

Печать списка пользователей группы:

response = portal.get_group_members("67e1761068b7453693a0c68c92a62e2e")
for user in response['users'] :
   print user

get_group_thumbnail

Возвращает байты эскиза для заданного group_id.

get_group_thumbnail(self, group_id)

Аргументы

Параметр

Описание

group_id

обязательное, строковое (string), задает эскиз группы

Возвращаемое значение

Байты, представляющие собой изображение.

Пример:

response = portal.get_group_thumbnail("67e1761068b7453693a0c68c92a62e2e")
f = open(filename, 'wb')
f.write(response)

get_org_users

Возвращает всех пользователей портала организации.

get_org_users(self, max_users=1000)

Аргументы

Параметр

Описание

max_users

дополнительное целочисленное (integer), максимальное число возвращаемых пользователей

Возвращаемое значение

Список словарей. Каждый словарь имеет следующие ключи:

Ключ

Значение

username

строковое (string)

storageUsage

целочисленное (integer)

storageQuota

целочисленное (integer)

description

строковое (string)

tags

список строк (list of strings)

region

строковое (string)

created

целочисленное (integer), время создания учетной записи, в миллисекундах с 1 января 1970

modified

целочисленное (integer), время последнего изменения учетной записи, в миллисекундах с 1 января 1970

email

строковое (string)

culture

строковое (string)

orgId

строковое (string)

preferredView

строковое (string)

groups

список строк (list of strings)

role

строковое (string) (org_user, org_publisher, org_admin)

fullName

строковое (string)

thumbnail

строковое (string)

idpUsername

строковое (string)

Пример:

Печать имен всех пользователей портала

resp = portalAdmin.get_org_users()
for user in resp:
   print user['username']

get_properties

Возвращает свойства портала, используется кэш, если не задано force=True.

get_properties(self, force=False)

get_user

Возвращает сведения о пользователе для заданного имени.

get_user(self, username)

Аргументы

Параметр

Описание

username

обязательное, строковое (string), имя пользователя, сведения о котором вам нужны

Возвращаемое значение

Если пользователь найден, возвращает объект dictionary со следующими ключами. Если пользователь не найден, не возвращается ничего.

Ключ

Значение

access

строковое (string)

created

целочисленное (integer), время создания учетной записи, в миллисекундах с 1 января 1970

culture

строковое (string), двухбуквенный код языка ('en')

description

строковое (string)

email

строковое (string)

fullName

строковое (string)

idpUsername

строковое (string), имя пользователя в корпоративной системе

groups

список словарей. Список ключей словаря см. в разделе get_group.

modified

целочисленное (integer), время последнего изменения учетной записи, в миллисекундах с 1 января 1970

orgId

строковое (string), ID организации

preferredView

строковое (string), значение Web, GIS или null

region

строковое (string), none или двухбуквенный код страны

role

строковое (string) (org_user, org_publisher, org_admin)

storageUsage

целочисленное (integer)

storageQuota

целочисленное (integer)

tags

список строк (list of strings)

thumbnail

строковое (string)

username

строковое (string)

get_version

Возвращает номер версии ПО, используется кэш, если не задано force=True. Информация о версии извлекается при создании объекта portal и кэшируется для будущих запросов. Если вы хотите создать запрос к порталу не обращаясь к кэшу, задайте аргументу force значение True.

get_version(self, force=False)

Аргументы

Параметр

Описание

force

булево (boolean) значение, true=создать запрос, false=использовать кэш

Возвращаемое значение

Строка с номером версии. Версия – это внутренний номер, который может не совпадать с версией установленного продукта.

invite_group_users

Приглашает пользователей в группу. Пользователь, приглашенный в группу, увидит список приглашений на закладке Группы в портале. Пользователь может принять или отклонить приглашение. Пользователь, выполняющий команду, должен быть владельцем группы.

invite_group_users(self, user_names, group_id, role='group_member', expiration=10080)

Аргументы

Параметр

Описание

user_names

обязательное, строковое (string), список приглашаемых пользователей, разделенный запятыми

group_id

обязательное, строковое (string), ID группы, в которую приглашаются пользователи

role

дополнительное, строковое (string), group_member или group_admin

expiration

дополнительное целочисленное (integer), длительность действия приглашения (в минутах)

Возвращаемое значение

Булево (boolean) значение, указывающее, успешно ли выполнена операция.

is_all_ssl

Возвращает true, если порталу требуется SSL.

is_all_ssl(self)

is_logged_in

Возвращает true, если пользователь вошел на портал.

is_logged_in(self)

is_org

Возвращает true, если порталом является организация.

is_org(self)

leave_group

Удаляет вошедшего пользователя из указанной группы. Необходимо, чтобы пользователь уже выполнил вход.

leave_group(self, group_id)

Аргументы

Параметр

Описание

group_id

обязательное, строковое (string), задающее ID группы

Возвращаемое значение

Булево (boolean) значение, указывающее, успешно ли выполнена операция.

logged_in_user

Возвращает сведения о вошедшем пользователе.

logged_in_user(self)

Возвращаемое значение

Словарь со следующими ключами:

Ключ

Значение

username

строковое (string)

storageUsage

целочисленное (integer)

описание

строковое (string)

tags

строка с разделителями-запятыми

created

целочисленное (integer), время создания учетной записи, в миллисекундах с 1 января 1970

modified

целочисленное (integer), время последнего изменения учетной записи, в миллисекундах с 1 января 1970

fullName

строковое (string)

email

строковое (string)

idpUsername

строковое (string), имя пользователя в корпоративной системе

login

Входит на портал с указанием имени пользователя и пароля. Вы можете войти на портал при создании объекта portal или сделать это позже. Эта функция предназначена для ситуации, когда необходимо выполнить вход позже.

login(self, username, password, expiration=60)

Аргументы

Параметр

Описание

username

обязательное, строковое (string)

password

обязательное, строковое (string)

expiration

дополнительное целочисленное (integer), длительность действия сгенерированного токена

Возвращаемое значение

Строка с токеном.

logout

Выход из портала. Портал "забудет" все имеющиеся токены, которые он использовал, все последующие обращения к порталу будут анонимными до следующего входа.

logout(self)

Возвращаемое значение

Нет возвращаемого значения

reassign_group

Переназначает группу другому владельцу.

reassign_group(self, group_id, target_owner)

Аргументы

Параметр

Описание

group_id

обязательное, строковое (string), уникальный идентификатор группы

target_owner

обязательное, строковое (string), имя пользователя нового владельца группы

Возвращаемое значение

Булево (boolean) значение, показывающее, успешно ли выполнена операция или нет.

remove_group_users

Удаляет пользователей из группы.

remove_group_users(self, user_names, group_id)

Аргументы

Параметр

Описание

user_names

обязательное, строковое (string), список пользователей, разделенный запятыми

group_id

обязательное, строковое (string), уникальный идентификатор группы

Возвращаемое значение

Словарь с ключом notRemoved, список пользователей, которые не были удалены.

reset_user

Сбрасывает пароль пользователя, секретный вопрос и ответ. Эта функция неприменима к порталам с учетными записями из корпоративного хранилища идентификаций, таких как ActiveDirectory или LDAP. Применяется только к встроенным пользователям портала. Если указан новый секретный вопрос, следует задать новый ответ.

reset_user(self, username, password, new_password=None, new_security_question=None, new_security_answer=None)

Аргументы

Параметр

Описание

username

обязательное, строковое (string), сбрасываемая учетная запись

password

обязательное, строковое (string), текущий пароль

new_password

дополнительное, строковое (string), новый пароль, если сбрасывается старый

new_security_question

дополнительное целочисленное (integer), новый секретный вопрос, если требуется

new_security_answer

дополнительное, строковое (string), новый ответ на секретный вопрос, если требуется

Возвращаемое значение

Булево (boolean) значение, показывающее, успешно ли выполнена операция или нет.

search

search(self, q, bbox=None, sort_field='title', sort_order='asc', max_results=1000, add_org=True)

search_groups

Поиск групп портала. При использовании этого способа учитывайте следующее:

  • Синтаксис запроса имеет много особенностей, которые здесь не описываются; чтобы просмотреть их, обратитесь к разделу Поиск в ArcGIS REST API.
  • При поиске групп обычно выполняется поиск в пределах вашей организации. Для удобства этот метод автоматически присоединяет ID вашей организации к запросу. Если вы не хотите присоединять его, присвойте для add_org значение false.

search_groups(self, q, sort_field='title', sort_order='asc', max_groups=1000, add_org=True)

Аргументы

Параметр

Описание

q

обязательное, строковое (string), строка запроса

sort_field

дополнительное, строковое (string), значениями могут быть заголовок, владелец или дата создания

sort_order

дополнительное, строковое (string), значениями могут быть asc или desc

max_groups

дополнительное целочисленное (integer), максимальное число возвращаемых групп

add_org

дополнительное булево (boolean) значение, задает возможность поиска в пределах организации

Возвращаемое значение

Список словарей. Каждый словарь имеет следующие ключи:

Ключ

Значение

access

строковое (string), значения private, org или public

создан

целочисленное (integer), время создания учетной записи, в миллисекундах с 1 января 1970

description

строковое (string)

id

строковое (string), уникальный id группы

isInvitationOnly

булево (boolean)

isViewOnly

булево (boolean)

modified

целочисленное (integer), время последнего изменения учетной записи, в миллисекундах с 1 января 1970

owner

строковое, имя пользователя или владельца

phone

строковое (string)

snippet

строковое (string), краткая сводка о группе

sortField

строковое (string), сортировка общедоступных элементов

sortOrder

строковое (string), по возрастанию или по убыванию

tags

список строк, введенные пользователем теги для поиска

thumbnail

строковое (string), имя файла. Присоединить к http://<community url>/groups/<group id>/info/

title

строковое (string), имя группы, отображаемое для пользователей

search_users

Поиск пользователей портала. При использовании этого способа учитывайте следующее:

  • Синтаксис запроса имеет много особенностей, которые здесь не описываются; чтобы просмотреть их, обратитесь к разделу Поиск в ArcGIS REST API.
  • При поиске пользователей обычно выполняется поиск в пределах вашей организации. Для удобства этот метод автоматически присоединяет ID вашей организации к запросу. Если вы не хотите присоединять его, присвойте для add_org значение false.

search_users(self, q, sort_field='username', sort_order='asc', max_users=1000, add_org=True)

Аргументы

Параметр

Описание

q

обязательное, строковое (string), строка запроса

sort_field

дополнительное, строковое (string), значениями могут быть заголовок, владелец или дата создания

sort_order

дополнительное, строковое (string), значениями могут быть asc или desc

max_users

дополнительное целочисленное (integer), максимальное число возвращаемых пользователей

add_org

дополнительное булево (boolean) значение, задает возможность поиска в пределах организации

Возвращаемое значение

Список словарей. Каждый словарь имеет следующие ключи:

Ключ

Значение

created

целочисленное (integer), время создания учетной записи, в миллисекундах с 1 января 1970

culture

строковое (string), двухбуквенный код языка

description

строковое (string)

fullName

строковое (string), имя пользователя

modified

целочисленное (integer), время последнего изменения учетной записи, в миллисекундах с 1 января 1970

region

строковое (string), может иметь значение none

tags

список строк, введенные пользователем теги для поиска

thumbnail

строковое (string), имя файла. Присоединить к http://<community url>/groups/<group id>/info/

username

строковое (string), имя пользователя

signup

Выполняет подписку пользователей на Portal for ArcGIS. Этот метод применим только к Portal for ArcGIS и может быть вызван анонимно. Однако самоподписку можно отключить на портале. При этом создаются только встроенные учетные записи; метод не работает с корпоративными учетными записями из корпоративного хранилища идентификаций.

Есть другой метод, createUser, который всегда можно использовать с Portal for ArcGIS 10.2.1 или более новыми версиями. Для этого метода требуется административный доступ, он может использоваться для создания встроенных пользователей и добавления корпоративных учетных записей на портал.

signup(self, username, password, fullname, email)

Аргументы

Параметр

Описание

username

обязательное, строковое (string), должно быть уникально, длиной более 4 знаков

password

обязательное, строковое (string), длиной больше или равно 8 знакам

fullname

обязательное, строковое (string), имя пользователя

email

обязательное, строковое (string), действующий email адрес

Возвращаемое значение

Булево (boolean) значение, показывающее, успешно ли выполнена операция или нет.

update_group

Обновляет группу. Необходимо указать значения только для тех аргументов, которые вы хотите обновить.

update_group(self, group_id, title=None, tags=None, description=None, snippet=None, access=None, is_invitation_only=None, sort_field=None, sort_order=None, is_view_only=None, thumbnail=None)

Аргументы

Параметр

Описание

group_id

обязательное, строковое (string), ID группы для изменения

title

обязательное, строковое (string), имя группы для изменения

tags

обязательное, строковое (string), список тегов, разделенный запятыми

description

дополнительное, строковое (string), подробное описание группы

snippet

дополнительное, строковое (string), сводка группы длиной не более 250 знаков

access

дополнительное, строковое (string), может иметь значения private, public или org

thumbnail

дополнительное, строковое (string), URL-адрес изображения группы

isInvitationOnly

дополнительное булево (boolean) значение, задает, может ли пользователь присоединяться по запросу

sort_field

дополнительное, строковое (string), задает сортировку опубликованных в группе элементов

sort_order

дополнительное, строковое (string), значения asc и desc соответствуют сортировке по возрастанию и по убыванию

is_view_only

дополнительное булево (boolean) значение, задает, можно ли искать эту группу

Возвращаемое значение

Булево (boolean) значение, показывающее, успешно ли выполнена операция или нет.

update_user

Обновляет свойства пользователя. Необходимо указать значения только для тех аргументов, которые вы хотите обновить.

update_user(self, username, access=None, preferred_view=None, description=None, tags=None, thumbnail=None, fullname=None, email=None, culture=None, region=None)

Аргументы

Ключ

Значение

username

обязательное, строковое (string), имя пользователя для обновления

access

дополнительное, строковое (string), значения: private, org, public

preferred_view

дополнительное, строковое (string), значение: Web, GIS, null

description

дополнительное, строковое (string), описание пользователя

tags

дополнительное, строковое (string), разделенный запятыми список тегов для поиска

thumbnail

дополнительное, строковое (string), путь или url-адрес файла Может использоваться PNG, GIF или JPEG. Максимальный размер 1 МБ.

fullName

дополнительное, строковое (string), имя пользователя, только для встроенных пользователей

email

дополнительное, строковое (string), email адрес, только для встроенных пользователей

culture

дополнительное, строковое (string), двухбуквенный код языка, например, "fr".

region

дополнительное, строковое (string), двухбуквенный код страны, например, FR

Возвращаемое значение

Булево (boolean) значение, показывающее, успешно ли выполнена операция или нет.

update_user_role

Обновляет роль пользователя.

update_user_role(self, username, role)

Аргументы

Ключ

Значение

username

обязательное, строковое (string), имя пользователя, роль которого изменяется

role

обязательное, строковое (string), org_user, org_publisher или org_admin

Возвращаемое значение

Булево (boolean) значение, показывающее, успешно ли выполнена операция или нет.

5/10/2014