Featured image of post Скрипт на Python для получения информации о всех пользователях сайта WordPress

Скрипт на Python для получения информации о всех пользователях сайта WordPress

Интерфейс WordPress /wp-json/wp/v2/users используется для получения информации о всех пользователях сайта. Ответ этого интерфейса содержит...

Интерфейс WordPress /wp-json/wp/v2/users предназначен для получения информации о всех пользователях сайта. Ответ этого интерфейса включает следующие поля:

  • id:  ID пользователя
  • name:  Имя пользователя
  • email:  Электронная почта пользователя
  • url:  URL профиля пользователя
  • avatar:  URL аватара пользователя
  • roles:  Роли пользователя
  • registered:  Дата регистрации пользователя
  • last_login:  Дата последнего входа пользователя
  • meta:  Метаданные пользователя

Вот пример скрипта на Python для получения информации о всех пользователях сайта WordPress:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import requests

# Отправка GET-запроса для получения данных пользователей
response = requests.get('http://your-wordpress-url/wp-json/wp/v2/users')

# Проверка, успешен ли запрос
if response.status_code == 200:
    users = response.json()  # Парсинг JSON-данных
    total_users = len(users)  # Получение количества пользователей
    print(f"Всего пользователей: {total_users}\n")

    # Перебор каждого пользователя
    for user in users:
        print("ID пользователя:", user.get('id', 'N/A'))
        print("Имя:", user.get('name', 'N/A'))
        print("Имя пользователя:", user.get('username', 'N/A'))
        print("Email:", user.get('email', 'N/A'))
        roles = user.get('roles', [])
        if roles:
            print("Роли:", ', '.join(roles))
        else:
            print("Роли: N/A")
        avatar_urls = user.get('avatar_urls', {})
        if avatar_urls:
            print("URL аватаров:")
            for size, url in avatar_urls.items():
                print(f"- {size}: {url}")
        else:
            print("URL аватаров: N/A")
        print("Описание:", user.get('description', 'N/A'))
        print("Ссылка на профиль:", user.get('link', 'N/A'))
        print("----------------------")
else:
    print("Не удалось получить данные пользователей. Код статуса:", response.status_code)

По умолчанию этот интерфейс возвращает информацию о всех пользователях, включая их имена. Если вы хотите скрыть имена пользователей, вы можете использовать настройку WordPress show_user_logins.

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

Создано при помощи Hugo
Тема Stack, дизайн Jimmy