跳转至

net Module

*以下内容由程序自动呈现, 可能存在错误

import net # 引入模块
from net import * # 引入模块中的所有函数与类

function request

def request(method: str, url: str, params: dict, data: str, headers: dict, verify: bool, proxy: dict,
            timeout=15) ->  Response
发送http请求

  • params: url参数,可省略
  • data: post文本,可省略
  • headers: 请求头,可省略
  • verify: 是否验证https,可省略,默认为不验证
  • proxy: 是否使用代理,可省略
  • timeout: 超时,可省略
  • method: GET,POST
  • url: 目标url

*function SSH

这个函数还在测试,未来可能会发生变化

function ssh_run

def ssh_run(address: str, user: str, passwd_or_private_key_path: str, command: str) -> None
通过ssh执行命令并启动交互式

  • address: 目标地址
  • user: 用户名
  • passwd_or_private_key_path: 密码或私钥文件路径
  • command: 需要执行的命令

function download

def download(url: str, save_path: str, proxy_url: str) ->  下载是否成功
下载文件

  • url: 文件url
  • save_path: 文件保存路径,如果是文件将会写入文件。可省略,默认当前Icarus工作目录
  • proxy_url: 代理url,可省略。e.g. http://127.0.0.1:7890 代理到本地clash

function ssh

def ssh(address: str, user: str, passwd_or_private_key_path: str) -> None
启动一个交互式的shell

  • address: 目标地址
  • user: 用户名
  • passwd_or_private_key_path: 密码或私钥文件路径

function ssh_exec

def ssh_exec(address: str, user: str, passwd_or_private_key_path: str, command: str) ->  返回命令执行输出
通过ssh执行命令并立即断开连接

  • command: 需要执行的命令
  • address: 目标地址
  • user: 用户名
  • passwd_or_private_key_path: 密码或私钥文件路径

*class SSH

这个类还在测试,未来可能会发生变化

class HttpProxy

class HttpProxy(self, addr: str, dump=False, ca_path="")
实例化一个Http代理

method start

def start(self) -> None
启动代理

method request

def request(self) -> None
获取请求

method response

def response(self) -> None
获取响应

method close

def close(self) -> None
关闭代理

class ProxyRequest

class ProxyRequest(self)
代理请求

*method proto

这个方法还在测试,未来可能会发生变化

*method params

这个方法还在测试,未来可能会发生变化

method method

def method(self, method="") -> None
获取或更改请求方法

  • method: 新的方法

method headers

def headers(self, headers: dict) -> None
获取或更改请求头

  • headers:

*method sid

这个方法还在测试,未来可能会发生变化

method body

def body(self, body: str) -> None
获取或更改请求体

  • body:

*method remote_addr

这个方法还在测试,未来可能会发生变化

method url

def url(self) -> None
获取url

*method host

这个方法还在测试,未来可能会发生变化

*method release

这个方法还在测试,未来可能会发生变化

*method drop

这个方法还在测试,未来可能会发生变化

class ProxyResponse

class ProxyResponse(self)
代理响应

*method headers

这个方法还在测试,未来可能会发生变化

*method body

这个方法还在测试,未来可能会发生变化

*method sid

这个方法还在测试,未来可能会发生变化

*method release

这个方法还在测试,未来可能会发生变化

*method drop

这个方法还在测试,未来可能会发生变化

method status_code

def status_code(self, code: int) -> None
获取或更改状态码

  • code:

class Response

class Response(self)
http响应

method status_code

def status_code(self) -> None
响应包状态码
(如果为-1则表示请求过程发生错误,详细错误用text()方法查看。

method headers

def headers(self) -> None
响应头
存在多个值的响应头以列表储存。

method text

def text(self) -> None
获取响应正文

method content

def content(self) -> None
获取响应正文(bytes)

*class Requester

这个类还在测试,未来可能会发生变化

class TCP

class TCP(self, address: str)
建立tcp连接

method send

def send(self, data: str) -> None
发送字符串

  • data:

method recv

def recv(self) ->  返回字节数组
接收所有数据

method interactive

def interactive(self) -> None
启用交互式收发数据

method close

def close(self) -> None
关闭连接

method send_line_bytes

def send_line_bytes(self, data: bytes) -> None
发送字节数组,但会在末尾加换行符

  • data:

method send_line

def send_line(self, data: str) -> None
发送字符串,但会在末尾加换行符

  • data:

method recv_line

def recv_line(self) ->  返回字节数组
接收数据到换行符停止

method log

def log(self) -> None
显示收发日志

method send_bytes

def send_bytes(self, data: bytes) -> None
发送字节数组

  • data:

class SFTP

class SFTP(self, address: str, user: str, passwd: str)
连接sftp

method upload

def upload(self, local: str, remote: str) -> None
上传文件

  • local: 本地路径
  • remote: 远程路径

method download

def download(self, remote: str, local: str) -> None
下载文件

  • remote: 远程路径
  • local: 本地路径

*method close

这个方法还在测试,未来可能会发生变化