我需要使用cURL命令在Python脚本中运行Druid查询。我能够在如下终端中获得结果。我是Python新手。
这就是我在终端可以做的事情。
第一个月
这是结果[{"__time":"2018-01-01T00:00:00.000Z","account_algorithm_id":"","account_id":"008be-44ad","action":"attribution","browser_platform":"","browser_type":"","sft_link_id":"","link_index":"","link_url":"","template_version":"","bucket_id":"23-4032-91ca-506bd","campaign_id":"3745e5a2-1-9582-2456bd7","count":1,"creative_id":"ef-4958-8d84-8","email_domain":"","event":"purchased initial","experiment_id":"51bd7d6e-5cb3-44ce-f445973","extended_attributes.aid":"","extended_attributes.atype":"","extended_attributes.aid":"","extended_attributes.ink_index":"","extended_attributes.plate_version":"","extended_attributes.cloud_app":"","extended_attributes.domain_region":"","extended_attributes.is_global":"","extended_attributes.opened_by":"","extended_attributes.sms_type":"","is_duplicate":"","message_distinct":"\"AgEHDAMMAAA=\"","mime_type":"","revenue_sum":0.0,"trigger_type":"EmailTrigger","trigger_uuid":"89055b76-0620","user_count":"\"AQAAAQB3AQ==\"","user_distinct":"\"AgEHDAAA=\""}]
个
我想在我的Python脚本中运行一个druid查询。我试图在我的Python脚本中使用cURL命令来实现这一点。然后我需要将输出数据解析到CSV文件中。有人可以吗,请帮助
2条答案
按热度按时间sf6xfgos1#
下面是Apache Druid项目中的一组示例,介绍如何使用
requests
包从python中使用Druid API。https://github.com/apache/druid/blob/master/examples/quickstart/jupyter-notebooks/notebooks/04-api/00-getting-started.ipynb
xwmevbvl2#
如果您100%确定运行脚本的每个系统都安装了
curl
并可调用,那么...你可以使用
os.system()
向运行脚本的系统发送一个命令,运行你提供的curl命令,然后保存结果为文本。然后,你可以使用Python来读取和解析你认为合适的。这说明了阅读文本文件部分,因为我认为它会在你提供的情况下工作(见下文):字符串
我认为如果curl命令实际上可以检索内容,那么应该会显示第二个块中显示的内容。在我的测试中,curl命令试图运行,但显示为
Could not resolve host: druid.domain.vpc
,因此它不起作用。这可能是因为我运行它的端口/套接字被阻塞,或者另一端当时有问题。或者你提供的不是一个最小的可重复的例子,这可能是因为找到一个sql数据库作为玩具例子来查询是很困难的?