想知道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 生成的流程图:

15184619-c427ec9c5fb8c76d.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步)重新开始执行,在开发阶段可以节约很多时间。

猜你喜欢

转载自blog.csdn.net/weixin_33762130/article/details/88265565