Haskell:
下载网页

怎么做:

-- 安装HTTP套件:http-conduit
import Network.HTTP.Simple

-- 定义下载函数
downloadWebPage :: String -> IO L.ByteString
downloadWebPage url = do
    request <- parseRequest url
    response <- httpLBS request
    return $ getResponseBody response

-- 使用下载函数
main :: IO ()
main = do
    content <- downloadWebPage "http://example.com"
    L.putStr content

示例输出:

<!doctype html>
<html>
<head>
    <title>Example Domain</title>
    ...
</head>
...
</html>

深入探究

下载网页是个老早就有的需求,curlwget是早期常用工具。Haskell 社区为此开发了很多库,像是http-conduit,还有wreqreq等。http-conduit使用了管道模式,适合处理流数据。执行效率高,但学习曲线可能陡峭些。

参考链接