Lua:获取一个网页

时间:2011-07-28 11:53:43

标签: http networking lua webpage fetch

我想获取网页并以字符串形式获取结果,但我不知道该怎么做。我在网上搜索并没有找到怎么做。

3 个答案:

答案 0 :(得分:13)

我只使用Lua Socket附带的http submodule。您可以简单地使用http.request将网页放入您想要的任何容器中(默认为字符串,但您可以使用表格,文件,stdio,...使用ltn12过滤器和接收器)。

举个例子:

local http=require'socket.http'
body,c,l,h = http.request('http://w3.impa.br/~diego/software/luasocket/http.html')
print('status line',l)
print('body',body)

答案 1 :(得分:2)

如果找不到确切的http客户端库,可以自行实现,也可以在someone else's work上构建。

在该链接中,虽然它被称为libhttpd,但作者明确指出它可以用于任何事情。看起来像是一个更可用的lua套接字包装器。

答案 2 :(得分:0)

如果你没有socket(比如我),但你有http库/模块,那么你可以试试这个:

http.get("https://nodemcu.readthedocs.io/en/master/en/modules/http/", nil, function(code, data)
    if (code ~= 200) then
        print("HTTP request failed")
    else
        print(code, data)
    end
end)

它对我有用

您可以在文档https://nodemcu.readthedocs.io/en/master/en/modules/http/#httpget

中找到更多信息