首页 > 编程问答 >如何使用REST查询sys_user表?

如何使用REST查询sys_user表?

时间:2024-07-26 13:18:16浏览次数:17  
标签:python servicenow

我正在使用 PyPi 的 servicenow v2.0.1 与 ServiceNow 交互。我需要能够在 sys_user 表中查找用户,以便找到分配给他们的 sys_id。如果有人有一些示例代码,他们可以分享,我们将不胜感激。

我尝试使用以下内容但没有成功:

from servicenow import Connection
from servicenow import ServiceNow

conn = conn = Connection.Auth(username='abc', password='xyz', instance='demo')
user = ServiceNow.Base(conn)
user.__table__ = 'sys_user.do'

rec = user.fetch_all({'user_name': 'abc123'})

这失败了

AttributeError: 'Base' object has no attribute 'fetch_all'

在尝试使用 servicenow 库的方式中遇到错误,因为 fetch_all 方法在 Base 对象上不可用。 servicenow 库并不打算用于直接表查询。

以下是使用 requests 库对 ServiceNow REST API 执行查询以获取 sys_user 表数据的更直接方法:

import requests

# 设置身份验证凭据和实例 URL
username = 'your_username'
password = 'your_password'
instance_url = 'https://your_instance.service-now.com'

# 设置查询参数
table_name = 'sys_user'
query = 'user_name=abc123'  # 使用的查询条件替换
fields = 'sys_id,user_name'  # 检索 sys_id 和 user_name 字段

# 构造 REST API URL
url = f'{instance_url}/api/now/table/{table_name}?sysparm_query={query}&sysparm_fields={fields}'

# 发送 GET 请求
response = requests.get(url, auth=(username, password))

# 检查响应状态代码
if response.status_code == 200:
    # 解析 JSON 响应
    data = response.json()
    # 提取结果
    users = data['result']
    # 处理用户记录
    for user in users:
        print(f"sys_id: {user['sys_id']}, user_name: {user['user_name']}")
else:
    print(f"请求失败,状态代码:{response.status_code}")

说明:

  1. 用的实际 ServiceNow 用户名、密码和实例 URL 替换 your_username your_password your_instance
  2. 修改 query 变量以匹配的搜索条件。在这个例子中,它会查找用户名为 abc123 的用户。
  3. fields 变量指定要检索的字段。用需要的任何字段替换 sys_id,user_name
  4. 该代码使用 requests.get() 方法发送带有身份验证标头的 GET 请求。
  5. 如果请求成功,它将解析 JSON 响应并提取 result 数组,其中包含匹配的用户记录。
  6. 然后,该代码循环遍历用户记录并打印其 sys_id user_name

这为提供了使用 ServiceNow REST API 查询 sys_user 表并检索所需信息的一种更可靠且直接的方法。

标签:python,servicenow
From: 34359653

相关文章

  • 学习资源系列之《Python深度学习基于PyTorch》
     前言近期应部分读者朋友的强烈邀请,希望推荐一本python深度学习实操的书籍。呐,今天为大家推荐小编偶然发现的这一本珍藏好书:《Python深度学习基于PyTorch》,文末附电子版获取方式《Python深度学习基于PyTorch》BriefIntroduction前言面对众多的深......
  • 如何使用Python实现语音转文字/字幕
    文章目录......
  • Python 教程(三):字符串特性大全
    目录专栏列表前言1.字符串基础2.字符串方法字符串查询字符串修改字符串切片3.字符串格式化旧式格式化(`%`操作符)`str.format()`方法f-string(Python3.6+)4.字符串编码5.Unicode和ASCII6.正则表达式7.字符串比较8.字符串连接9.字符串不可变性10.字符串的内......
  • python+flask计算机毕业设计新冠肺炎疫情人员统计及打卡系统(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景自新冠肺炎疫情爆发以来,全球公共卫生体系面临前所未有的挑战。疫情防控工作的高效开展,依赖于对人员流动、健康状况及疫情数据的精准掌握与......
  • python+flask计算机毕业设计基于智能匹配的体育场馆预约系统App(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着全民健身意识的日益增强,体育场馆作为民众参与体育活动的重要场所,其利用率与便捷性成为了社会关注的焦点。然而,传统的体育场馆预约方式......
  • Vonage 语音 API - 使用 python 出现错误
    我正在尝试使用vonage语音api模拟语音通话。我正在尝试使用python来做到这一点。我创建了一个.env文件并更新了应用程序id和私钥值的值,而不是路径(不确定从哪里获取它)。这是下面编写的代码:#!/usr/bin/envpython3importosfromos.pathimportjoin,dirname......
  • 数据清洗与预处理:使用 Python Pandas 库
    数据清洗与预处理:使用PythonPandas库1.简介数据清洗与预处理是数据科学和机器学习中必不可少的步骤。它涉及识别和处理原始数据中的错误、不一致和缺失值,以确保数据的质量和可靠性。Python的Pandas库提供了强大的工具,简化了数据清洗和预处理的过程。2.数据加载与探索......
  • 【Python】成功解决:`FileExistsError: [Errno 17] File exists: ‘xxx’`
    【Python】成功解决:FileExistsError:[Errno17]Fileexists:‘xxx’在Python编程中,处理文件和目录是常见的任务之一。然而,当我们尝试执行某些文件操作,如创建新文件或目录时,如果目标文件或目录已经存在,就可能会遇到FileExistsError异常。这个错误通常伴随着消息[Errno1......
  • (三)Python基本数据类型
    Python的基本数据类型包括整数类型、浮点数类型和复数类型。下面分别介绍这些数据类型以及数值运算操作符和数值运算函数。整数类型(int):整数类型表示没有小数部分的数字,可以是正数、负数或零。例如:a=5b=-3c=02.浮点数类型(float):浮点数类型表示有小数部分的数字,可以......
  • 【Python自动化办公】用Pandas库自动化操作Excel表格,从读取、写入到数据处理和分析
    文末免费赠送精品编程资料~~前言Python的第三方Pandas库是数据处理和分析中的利器,其强大的功能可以帮助我们轻松地对Excel表格进行自动化操作。接下来,我们将介绍九个用Pandas库操作Excel的编程例子,并且每个例子都会涉及不同的知识点,确保全面掌握这个主题。1.读取和写入E......