想知道Python的 数据驱动编程框架 Da0tabot 是怎么运行?

前言

Da0tabot是用于 Web 爬虫、ETL、数据管道任务开发的高性能 Python 数据驱动编程框架。
**
特性:**

  • 数据驱动编程框架
  • 基于协程的并行
  • 基于类型和内容的函数路由

安装:

    pip install -U databot

Databot is...

简单

每2秒加载一次CoinDesk比特币价格. 高级价格聚合案例参见 here.


from databot.flow import Pipe, Timer
from databot.botframe import BotFrame
from databot.http.http import HttpLoader


def main():
    Pipe(
        Timer(delay=2),  # send timer data to pipe every 2 sen
        "http://api.coindesk.com/v1/bpi/currentprice.json",  # send url to pipe when timer trigger
        HttpLoader(),  # read url and load http response
        lambda r: r.json['bpi']['USD']['rate_float'],  # read http response and parese as json
        print,  # print out
    )

    BotFrame.render('simple_bitcoin_price')
    BotFrame.run()

main()```

流程图形化

databot 生成的流程图:  
![](https://yqfile.alicdn.com/bf817f05db212da5438a3d02eb60c10b304a0862.png)


>小编推荐一个学python的学习qun 740322234
无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!


**快速**

节点并行运行可以很好的处理流数据

**可视化**

执行函数: BotFrame.render('bitcoin_arbitrage') Databot 将会把数据处理流程生成为 graphviz 图片:

https://github.com/kkyon/databot/blob/master/examples/bitcoin_arbitrage.png

**可重放**

配置可重放模式: config.replay_mode=True 异常发生在第N步的时候,不用从第一步执行到第N步,Databot可以从完成的最近点(通常是第N-1步)重新开始执行,在开发阶段可以节约很多时间。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章