使用Python3 requests 操作CuteHttpFil

2019-03-27  本文已影响0人  她渐渐地笑了

官网入口

CuteHttpFileServer/chfs是一个免费的、HTTP协议的文件共享服务器,使用浏览器可以快速访问。它具有以下特点:

  • 单个文件,整个软件只有一个可执行程序,无配置文件等其他文件
  • 跨平台运行,支持主流平台:Windows,Linux和Mac
  • 界面简洁,简单易用
  • 支持扫码下载和手机端访问,手机与电脑之间共享文件非常方便
  • 支持账户权限控制和地址过滤
  • 支持快速分享文字片段
  • 支持webdav协议

与其他常用文件共享方式(如FTP,飞秋,网盘,自己建站)相比,具有使用简单,适用场景更多的优点,在个人使用以及共享给他人的场景中非常方便快捷。

本文主要介绍在Linux上的使用:

一、安装和配置

1. 首先在Linux下载文件(此版本为1.8版本)

wget http://iscute.cn/tar/chfs/1.8/chfs-linux-386-1.8.zip

2. 解压文件

unzip chfs-linux-386-1.8.zip

3. 给文件添加可执行权限

chmod +x chfs

4. 在文件目录下启动

# 启动主要配置了账号, 密码, 权限(r读w写d删除), 共享的文件夹, 监听的端口
./chfs --rule="::|user:pwd:rwd" --path="x:/xxx" --port=8080

二、使用requests调用api接口

1. 登录

import requests
# 保存cookie信息
file_session = requests.Session()
# 登录的账号密码
login_data = {"user": "admin", "pwd": "password"}
# 输入你启动的ip和端口
file_session.post('http://ip:port/session', data=login_data)

2. 删除文件

# 判断文件是否存在, dsc是路径, file是文件名称
resp = file_session.get('http://203.195.206.249:8080/exist?file={}/{}'.format(dsc, file))
if resp.ok:
        resp = file_session.delete('http://ip:port/rmfiles?filepath={}/{}'.format(
            dsc, file))
        if resp.ok:
            print('删除成功:', file)
            return True
        else:
            print('删除失败:', file)
            return False
    else:
        print('文件不存在, 无需删除!')
        return True

3. 上传文件

# 先把要上传的文件转换为二进制信息
file_data = {'file': open("{}/{}".format(src, file), 'rb')}
# 上传文件的路径
data = {'folder': dsc}
resp = file_session.post('http://ip:port/upload', files=file_data, data=data)
if resp.ok:
    print('上传成功:', file)
    return True
else:
    # 文件已存在在目录中, 不能覆盖
    print('上传失败:', file)
    return False
上一篇下一篇

猜你喜欢

热点阅读