pgdl-8.4: src/FetchHtml.hs
{-# LANGUAGE OverloadedStrings #-}
module FetchHtml where
import Getconfig
import Network.URI
import Data.Text.Encoding
import Data.Maybe
import System.FilePath
import Control.Applicative
import qualified Data.Text as T
import Network.HTTP.Conduit
import Data.ByteString.Lazy
--import bytestring?
fetchHtml :: IO T.Text
fetchHtml = getTextContent =<< genURI
fetchFld :: T.Text -> IO T.Text
fetchFld fnt = do
uri <- (</> fn) <$> genURI
getTextContent uri
where fn = T.unpack fnt
genURI :: IO String
genURI = do
usrn <- getUsername
usrp <- getPassword
servp <- getServpath
return $ "http://" ++ usrn ++ ":" ++ usrp ++ "@" ++ servp
getTextContent :: String -> IO T.Text
getTextContent u = do
bs <- simpleHttp u
let t = decodeUtf8 . toStrict $ bs
return t