
# 资源相关
#### 前提条件
- 已参考[Python SDK概述](https://support.huaweicloud.com/sdkreference-dli/dli_04_0124.html)配置Java SDK环境。
- 已参考[初始化DLI客户端](https://support.huaweicloud.com/sdkreference-dli/dli_04_0033.html)完成客户端DLIClient的初始化。
 
 #### 上传资源包
您可以使用DLI提供的接口上传资源包，示例代码如下。完整样例代码和依赖包说明请参考：[Python SDK概述](https://support.huaweicloud.com/sdkreference-dli/dli_04_0124.html)。
```
def upload_resource(dli_client, kind, obs_jar_paths, group_name):
    try:
        dli_client.upload_resource(kind, obs_jar_paths, group_name)
    except DliException as e:
        print(e)
        return
```
![](https://support.huaweicloud.com/sdkreference-dli/public_sys-resources/note_3.0-zh-cn.png)
请求参数说明如下，详细参数使用可以参考[Python SDK概述](https://support.huaweicloud.com/sdkreference-dli/dli_04_0124.html)下载样例代码。
- kind：资源包类型，当前支持的包类型分别为：
  - **jar**：用户jar文件
  
  - **pyfile**：用户Python文件
  
  - **file**：用户文件
  
  - **modelfile**：用户AI模型文件
   
- obs_jar_paths：对应资源包的OBS路径，参数构成为：{bucketName}.{obs域名}/{jarPath}/{jarName}。 例如："https://bucketname.obs.cn-north-1.myhuaweicloud.com/jarname.jar"
  
- group_name：资源包所属分组名称。
 
 #### 查询所有资源包
DLI提供查询资源列表接口，您可以使用该接口并选择相应的资源来执行作业。示例代码如下：
```
def list_resources(dli_client):
    try:
        resources = dli_client.list_resources()
    except DliException as e:
        print(e)
        return
    for resources_info in resources.package_resources:
        print('Package resource name:' + resources_info.resource_name)
    for group_resource in resources.group_resources:
        print('Group resource name:' + group_resource.group_name)
```
完整样例代码和依赖包说明请参考：[Python SDK概述](https://support.huaweicloud.com/sdkreference-dli/dli_04_0124.html)。
 #### 查询指定资源包
您可以使用该接口查询指定的资源包信息，示例代码如下：
```
def get_package_resource(dli_client, resource_name, group_name):
 try:
        pkg_resource = dli_client.get_package_resource(resource_name, group_name)
        print(pkg_resource)
    except DliException as e:
        print(e)
        return
```
 #### 删除资源包
您可以使用该接口删除已上传的资源包，示例代码如下：
```
def delete_resource(dli_client, resource_name, group_name):
    try:
        dli_client.delete_resource(resource_name, group_name)
    except DliException as e:
        print(e)
        return
```
