Skip to main content
# dburi

use python parse database uri address, return format

什么是uri ? 简单说uri是配置地址的一种表达方式,可以在一行里详细的描述出host,port,user,passwd,database,tablename,other field 。

我发现python社区里,没发现能用的database uri的解析模块,就自己搞了一个。下面有测试的结果 。


[更多文档](http://xiaorui.cc "更多db uri")

### 安装

```
pip install dburi
```


```
git clone git@github.com:rfyiamcool/dburi.git
cd dburi
python setup.py install
```

### 方法

mysql://xiaorui:123@localhost/xiaorui_master?option=open&charset=utf8&table=test'

```
mysql标示位表明是哪个数据库
xiaorui:123 表明的是账号和密码
@localhost 表明的是数据库HOST地址
/xiaorui_master 表明的是数据库名字
?k=v&k=v 这堆传参是作为扩展字段使用的
```

开始测试,端口可以不填写,但是数据库要写全称
```
from dburi import parse_db_str
print parse_db_str('mysql://xiaorui:123@localhost/xiaorui_master?option=open&charset=utf8&table=test')
print parse_db_str('mysql://xiaorui:123@localhost/xiaorui_master')
print parse_db_str("mongo://127.0.0.1:27017/xiaorui_master")
print parse_db_str('redis://127.0.0.1:6379')
print parse_db_str('elasticsearch://127.0.0.1:9200')
print parse_db_str('hbase://127.0.0.1:9090/xiaorui')
print parse_db_str('memcached://127.0.0.1:11211')
```

Result 结果
```
{'name': 'mysql', 'extra': 'option=open&charset=utf8&table=test', 'passwd': '123', 'charset': 'utf8', 'db': 'xiaorui_master', 'host': 'localhost', 'user': 'xiaorui', 'table': 'test', 'port': 3306, 'option': 'open'}
{'name': 'mysql', 'passwd': '123', 'db': 'xiaorui_master', 'host': 'localhost', 'user': 'xiaorui', 'port': 3306}
{'host': '127.0.0.1', 'db': 'xiaorui_master', 'name': 'mongo', 'port': 27017}
{'host': '127.0.0.1', 'name': 'redis', 'port': 6379}
{'host': '127.0.0.1', 'name': 'elasticsearch', 'port': 9200}
{'host': '127.0.0.1', 'db': 'xiaorui', 'name': 'hbase', 'port': 9090}
{'host': '127.0.0.1', 'name': 'memcached', 'port': 11211}
```

Metadata

Release files for dburi 3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dburi 3.1
File Size Uploaded
dburi-3.1.tar.gz 3.6 kB Details

Release files / dburi-3.1.tar.gz

Download URL dburi-3.1.tar.gz
Size 3.6 kB
Tags Source
SHA-256 checksum
How to use checksums
b4e77c60f1dac6ae124bf384713531ccb2209b5f2fbb30fd35970080f9f77968
BLAKE2b-256 checksum
How to use checksums
40d83314f78817dd24d70671f90169f6cbe726749a5926224ab05b4504ab99c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

3.3

1 release file

3.2

1 release file

This release

3.1 This release

1 release file

2.1

1 release file

2.0

1 release file

1.1

1 release file

1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page