linux - 创建一个 shell,使用 curl 在 dropfile.to 上下载文件

标签 linux shell curl download sh

这是我的第一个问题,所以要温和 ;-) 我搜索如何编写一个可以使用 curl 从 dropfile.to 下载文件的 shell

上下文:我们使用 dropfile.to 交换我们用 GoPro 拍摄的视频,而不是将它们剪切并通过邮件发送。 我们不需要任何注册,但本网站会在自动删除之前保留视频 24 小时。 所以,我写了一个 shell 来读取我的邮件(完成)并在找到 dropfile.to 链接时自动下载视频...

现在,我知道当我按下 dropfile.to/$code 上的“下载文件”按钮时,我发送了一个带有参数 dl_file_name : "$code"的 POST 请求;该网站进行重定向并发出 GET 请求;我想要的文件作为文件附件在标题答案中...

所以 curl 请求应该是这样的:

curl -L -O -J -d download-file:$code https://dropfile.to/$code

有选项: -L 重定向 -O 用于下载结果 -J 用于下载附件文件 -d 用于 POST 方法

可悲的是,它不起作用... T_T

当我直接使用我在浏览器中找到的 get URL 时:

curl -O -J $urlGet

我有一些错误,例如:

    % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   178  100   178    0     0    337      0 --:--:-- --:--:-- --:--:--   337
100   154  100   154    0     0    139      0  0:00:01  0:00:01 --:--:--  3080
Warning: Remote filename has no length!
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
curl: (23) Failed writing body (0 != 3445)

希望你能帮帮我

最佳答案

application/x-www-form-urlencoded 格式中,名称和值用等号 (=) 分隔:

code="p42zvEV"
curl -L -J -O "https://dropfile.to/$code" -d "dl_file_name=$code"

关于linux - 创建一个 shell,使用 curl 在 dropfile.to 上下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45130175/

相关文章:

sql - 选择最新的测量结果

linux - 从 shell 脚本中提取 YAML 中的变量

bash - 如何编写 shell 脚本从curl命令输出中打印表格格式

PHP exec rm -Rf 不适用于子目录

C++ LibCurl 发送 HTTPS 请求

c++ - 系统调用开销

linux - Bash,将文件从文件夹复制到另一个

c++ - 是否可以继承默认的 IShellFolder 实现?

bash - macOS上的curl与unicode字符的问题

php - 调用 URLFetch 失败,出现 url x 的应用程序错误 5