> ## Documentation Index
> Fetch the complete documentation index at: https://langchain-5e9cc07a-preview-opensw-1774858546-a100bff.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Huawei obs directory integration

> Integrate with the Huawei obs directory document loader using LangChain Python.

The following code demonstrates how to load objects from the Huawei OBS (Object Storage Service) as documents.

```python theme={null}
# Install the required package
# pip install esdk-obs-python
```

```python theme={null}
from langchain_community.document_loaders import OBSDirectoryLoader
```

```python theme={null}
endpoint = "your-endpoint"
```

```python theme={null}
# Configure your access credentials\n
config = {"ak": "your-access-key", "sk": "your-secret-key"}
loader = OBSDirectoryLoader("your-bucket-name", endpoint=endpoint, config=config)
```

```python theme={null}
loader.load()
```

## Specify a prefix for loading

If you want to load objects with a specific prefix from the bucket, you can use the following code:

```python theme={null}
loader = OBSDirectoryLoader(
    "your-bucket-name", endpoint=endpoint, config=config, prefix="test_prefix"
)
```

```python theme={null}
loader.load()
```

## Get authentication information from ECS

If your langchain is deployed on Huawei Cloud ECS and [Agency is set up](https://support.huaweicloud.com/intl/en-us/usermanual-ecs/ecs_03_0166.html#section7), the loader can directly get the security token from ECS without needing access key and secret key.

```python theme={null}
config = {"get_token_from_ecs": True}
loader = OBSDirectoryLoader("your-bucket-name", endpoint=endpoint, config=config)
```

```python theme={null}
loader.load()
```

## Use a public bucket

If your bucket's bucket policy allows anonymous access (anonymous users have `listBucket` and `GetObject` permissions), you can directly load the objects without configuring the `config` parameter.

```python theme={null}
loader = OBSDirectoryLoader("your-bucket-name", endpoint=endpoint)
```

```python theme={null}
loader.load()
```

***

<div className="source-links">
  <Callout icon="edit">
    [Edit this page on GitHub](https://github.com/langchain-ai/docs/edit/main/src/oss/python/integrations/document_loaders/huawei_obs_directory.mdx) or [file an issue](https://github.com/langchain-ai/docs/issues/new/choose).
  </Callout>

  <Callout icon="terminal-2">
    [Connect these docs](/use-these-docs) to Claude, VSCode, and more via MCP for real-time answers.
  </Callout>
</div>
