idataapi-transform是一个可以快速调用数据API,并且实现转换成以下任意 格式/文件/数据库 读取数据的工具
API(http)、ES(ElasticSearch)、XLSX、JSON、Redis、MySQL、MongoDB、
并存储到以下任意 格式/文件/数据库
CSV、XLSX、JSON、TXT、ES、Redis、MySQL、MongoDB
Features:
(1)所有的网络通讯均通过 asyncio原生/或第三方lib 提供异步支持
(2)各模块间通过相同的方法调用
(3)基于 Template Method 以及 Factory Method 完成
(4)所有的网络读取操作均默认重试三次,三次后错误输出至错误日志
(5)所有的网络写入操作均默认重试三次,三次后错误输出至错误日志
(6)所有不同的格式均提供简便的命令行操作,在模块中提供更丰富的参数支持
(7)每一个 Getter 和 Writer 对象都支持过滤器,你可以在过滤器中修改或者过滤每一条数据
(8)自动生成表头(csv/xlsx)/表格(mysql)
(9)对于APIGetter, 会自动翻页,每次翻页会自动重试到限制次数再进行报错
(10)APIBulkGetter 支持指定并发数后批量处理 APIGetter/url 对象, 可接受可迭代对象或者异步迭代器
(1)python 版本号 >= 3.5.2
(2)如果你需要使用 MySQL 模块, 你的 python 版本号要 >= 3.5.3
(3)如果你需要使用 MongoDB 模块,你需要在非 Windows 下
python3 -m pip install idataapi-transform
# 安装完成后在终端跑如下命令
transform --help # 解释各个参数的作用以及创建默认的配置文件
# 编辑配置文件 ~/idataapi-transform.ini 配置 ElasticSearch, redis, mysql 主机, 端口, 默认并发数等参数
# 如果你的 python 版本 >= 3.5.3, 并且需要安装 MySQL 模块
python3 -m pip install 'PyMySQL>=0.7.5,<0.9'
python3 -m pip install aiomysql
# 如果你不在 Windows 下, 并且需要安装 MongoDB 模块
python3 -m pip install motor