Python脚本获取wordpress网站的所有用户信息

205次阅读
没有评论

WordPress 的 /wp-json/wp/v2/users 接口用于获取网站上的所有用户信息。该接口返回的响应包含以下字段:

  • id:  用户 ID
  • name:  用户名
  • email:  用户电子邮件地址
  • url:  用户个人资料 URL
  • avatar:  用户头像 URL
  • roles:  用户角色
  • registered:  用户注册日期
  • last_login:  用户最后登录日期
  • meta:  用户元数据

以下是一个 Python 脚本获取 wordpress 网站的所有用户信息的示例:

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: {total_users}\n")
    
    # 遍历每个用户
    for user in users:
        print("User ID:", user.get('id', 'N/A'))
        print("Name:", user.get('name', 'N/A'))
        print("Username:", user.get('username', 'N/A'))
        print("Email:", user.get('email', 'N/A'))
        roles = user.get('roles', [])
        if roles:
            print("Roles:", ','.join(roles))
        else:
            print("Roles: N/A")
        avatar_urls = user.get('avatar_urls', {})
        if avatar_urls:
            print("Avatar URLs:")
            for size, url in avatar_urls.items():
                print(f"- {size}: {url}")
        else:
            print("Avatar URLs: N/A")
        print("Description:", user.get('description', 'N/A'))
        print("Profile Link:", user.get('link', 'N/A'))
        print("----------------------")
else:
    print("Failed to retrieve user data. Status code:", response.status_code)

默认情况下,该接口返回所有用户的信息,包括用户名。如果您想隐藏用户名,可以使用 WordPress 的 show_user_logins 设置。

为了安全起见,您应该限制对该接口的访问。您可以使用 WordPress 的 rest_user_query 过滤器来限制可以访问该接口的用户。

正文完
 0
板面杂货铺
版权声明:本站原创文章,由 板面杂货铺 于2023-09-07发表,共计1206字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)