从给定的URL下载和存储文件到lua中的给定路径

时间:2012-07-10 12:16:20

标签: lua

我是lua的新手,但我正在开发一个应用程序,该应用程序可以处理具有给定路径的特定文件。现在,我想处理我下载的文件。是否有任何lua库或代码行可用于下载并将其存储在我的计算机上?

1 个答案:

答案 0 :(得分:7)

您可以使用LuaSocket库及其http.request函数从URL下载HTTP。

该功能有两种风格:

  • 简单致电:http.request('http://stackoverflow.com')
  • 高级致电:http.request { url = 'http://stackoverflow.com', ... }

简单调用返回4个值 - 字符串中的URL的整个内容,HTTP响应代码,标题和响应行。然后,您可以使用io库将内容保存到文件中。

高级调用允许您设置HTTP方法和标头等几个参数。一个重要参数是sink。它代表LTN12-style sink。要存储到文件,您可以使用sink.file

local file = ltn12.sink.file(io.open('stackoverflow', 'w'))
http.request {
    url = 'http://stackoverflow.com',
    sink = file,
}