gpt4 book ai didi

用于访问 Closure Compiler Service API 的 Python 库

转载 作者:行者123 更新时间:2023-11-30 23:32:50 26 4
gpt4 key购买 nike

我正在尝试将闭包编译器集成到我的部署过程中。我遇到过this online tool这允许我从所需的组件生成一些 javascript。我看到该工具可以通过 API 访问,这就是我想要集成到我的部署脚本中的内容。

我不想重新发明轮子,并且想知道是否有一个针对此 API 的可用 Python 包装器。 examples提供的都是非常低级的,我还没有找到替代方案。

有人可以向我指出更高级别的 python 库来访问 Goggle Closure Compiler Service API 吗?

最佳答案

developer.google.com 上的示例实际上使用 Python,因此这是一个很好的起点。然而,API 似乎太小了,甚至连官方文档也只选择使用 urllibhttplib Python 内置模块。将该逻辑推广到一两个辅助函数中确实看起来是一项微不足道的任务。

...

params = urllib.urlencode([
('js_code', sys.argv[1]),
('compilation_level', 'WHITESPACE_ONLY'),
('output_format', 'text'),
('output_info', 'compiled_code'),
])

# Always use the following value for the Content-type header.
headers = {"Content-type": "application/x-www-form-urlencoded"}
conn = httplib.HTTPConnection('closure-compiler.appspot.com')
conn.request('POST', '/compile', params, headers)

...

参见https://developers.google.com/closure/compiler/docs/api-tutorial1

附注您还可以查看https://github.com/danielfm/closure-compiler-cli —它是一个命令行工具,但源代码展示了 API 到底有多么简单。

因此将上面的内容转换为 Pythonic API:

import httplib
import sys
import urllib
from contextlib import closing


def call_closure_api(**kwargs):
with closing(httplib.HTTPConnection('closure-compiler.appspot.com')) as conn:
conn.request(
'POST', '/compile',
urllib.urlencode(kwargs.items()),
headers={"Content-type": "application/x-www-form-urlencoded"}
)
return conn.getresponse().read()


call_closure_api(
js_code=sys.argv[1],
# feel free to introduce named constants for these
compilation_level='WHITESPACE_ONLY',
output_format='text',
output_info='compiled_code'
)

关于用于访问 Closure Compiler Service API 的 Python 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19196406/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com