用于创建到httpweb服务的python绑定的工具。
http2p的Python项目详细描述
the_one_where_we_have_an_http_service_that_we_want_call_through_normal_looking_python_functions
(Http)对人类的请求
创建到httpweb服务的python绑定的工具。 如python开发的web服务或web服务请求web数据。在
故事如下:你在网上找到了一些你想与之互动的东西。在
- 这可能是你想要访问的数据
- 或者一些你想做的事情——比如搜索、发布文章、购买比特币等等。。在
- 如果你真幸运,已经有人编写了python层来做你想做的事情。在
- 如果幸运的话,这个资源附带了一个清晰的接口定义 很容易为您编写自己的python。在
- 如果你运气不好,你就得破译一些API的坏文档, 或者编写你自己的机器人程序,爬虫程序和解析器来获得你想要的。在
我们想让你更轻松些。在
我们现在要关注的是为http请求建立python层的基本共同点。在
“但是。。。优秀的^{requests
开发人员。
这确实是一个很好的包,我们现在不用写了!在
我们想从那里开始,覆盖更多烦人的样板,让你更接近,更快, 对于您实际需要的功能: 函数与代码中使用的python类型相关, 它使用可以直接在代码中使用的python对象进行响应。在
requests
的发展
(包括recommended add-ons)
可以说是面向金属(原始的http机制)并在头脑中构建与人类的接口。
相比之下,我们想要面对人类,建造适配器来与金属进行通信。
也就是说,在我们的例子中,http是隐藏在幕后的事实甚至不应该是可见的(除非它需要)。在
为了纪念“为人类设计”的灵感,我们扩展了请求的标签行, “对人类的要求”。在
方法
一如既往,我们喜欢表达性、样板最小化、关注点分离和分层方法 渐进式的转变和增强,让我们从现在的状态到我们想要的位置。在
所以对于py2request,我们在哪里,我们想去哪里?在
What we have:我们有一些http可访问的资源。例如,一个结构完美的API REST web服务、非常混乱的网站或介于两者之间的任何规范。在
What we'd like:这些web内容的Python接口。 也就是说,我们希望与资源对话python,并让它向我们反馈python。 此外,我们希望这次谈话能切中要害;我们不想说得太多, 我们不希望得到的回答只包含我们想要的东西和我们想要的方式。 最后,我们希望用最小的努力来实现这个目标——让我们自己做出默认的选择,但是能够 我们自己的选择如果我们愿意的话。在
这要求太高了吗?在
在分层方法中,我们将从函数规范转到返回python的函数 请求对象,然后我们可以进一步包装这些对象来创建实际执行请求的函数, 返回一个响应对象,并进一步包装以获得最终的python输出类型。在
所以这个管道中的对象是:
- 规范
- 请求
- 回应
- 最终python对象
- 项目
标签: