ftp#

定义 CondaSession (requests.Session) 的 FTP 传输适配器。

取自 requests-ftp (Lukasa/requests-ftp)。

根据 Apache License, Version 2.0(“许可证”)获得许可;除非遵守许可证,否则您不得使用此文件。您可以在以下位置获得许可证副本:

除非适用法律要求或以书面形式达成协议,否则根据“按原样”基础分发的软件,不附带任何形式的明示或暗示的保证或条件。请参阅许可证,以了解有关特定语言的权限和限制的更多信息。

#

FTPAdapter

一个处理 FTP URL 的 Requests 传输适配器。

函数#

_new_makepasv(self)

data_callback_factory(variable)

返回一个适用于 FTP 库的回调。此回调

build_text_response(request, data, code)

为文本数据构建响应。

build_binary_response(request, data, code)

为编码未知的数据构建响应。

build_response(request, data, code, encoding)

使用以下项从 ftplib 返回的数据构建响应对象

get_status_code_from_code_response(code)

处理复杂的代码响应,甚至是多行响应。

属性#

_old_makepasv#
_new_makepasv(self)#
class FTPAdapter#

基类: conda.gateways.connection.BaseAdapter

一个处理 FTP URL 的 Requests 传输适配器。

send(request, **kwargs)#

通过 FTP 发送 PreparedRequest 对象。返回一个响应对象。

close()#

处置任何内部状态。

list(path, request)#

在给定路径上执行 FTP LIST 命令。

retr(path, request)#

在给定路径上执行 FTP RETR 命令。

nlst(path, request)#

在给定路径上执行 FTP NLST 命令。

get_username_password_from_header(request)#

给定 PreparedRequest 对象,反转添加 HTTP Basic auth 的过程以获取用户名和密码。允许 FTP 适配器利用 basic auth 表示法,而无需更改控制流程。

get_host_and_path_from_url(request)#

给定 PreparedRequest 对象,以确定主机和路径的方式拆分 URL。这是一个单独的方法,用于包装 urlparse 的一些混乱之处。

data_callback_factory(variable)#

返回一个适用于 FTP 库的回调。此回调将重复将数据保存到提供给此函数的变量中。此变量应为类文件结构。

build_text_response(request, data, code)#

为文本数据构建响应。

build_binary_response(request, data, code)#

为编码未知的数据构建响应。

build_response(request, data, code, encoding)#

使用指定的编码,从 ftplib 返回的数据构建响应对象。

get_status_code_from_code_response(code)#

处理复杂的代码响应,甚至是多行响应。

我们通过两种方式获取状态代码: - 从响应中最后一行有效行中提取代码 - 从代码的前 3 位数字中获取代码 在比较两个值之后,我们可以安全地设置代码或引发警告。 .. rubric:: 示例

  • get_status_code_from_code_response('200 Welcome') == 200

  • multi_line_code = '226-File successfully transferredn226 0.000 seconds' get_status_code_from_code_response(multi_line_code) == 226

  • multi_line_with_code_conflicts = '200-File successfully transferredn226 0.000 seconds' get_status_code_from_code_response(multi_line_with_code_conflicts) == 226

有关更多详细信息,请参阅 RFC 959,第 36 页,关于多行响应

https://www.ietf.org/rfc/rfc959.txt “因此,多行回复的格式是第一行

将以完全要求的回复代码开头,紧随其后的是连字符“-”(也称为减号),后跟文本。最后一行将以相同的代码开头,紧随其后的是空格 <SP>,可选地是一些文本,以及 Telnet 行尾代码。”