Created
April 26, 2017 05:00
-
-
Save sebadoom/2672dac6aecf3fe1bf12b8c4062b35ae to your computer and use it in GitHub Desktop.
Gather forms using wreq and html-conduit
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{-# LANGUAGE OverloadedStrings #-} | |
module Main where | |
import Network.Wreq | |
import qualified Text.HTML.DOM as H | |
import Text.XML | |
import Text.XML.Cursor | |
import Control.Lens hiding (element) | |
import Data.Aeson.Lens | |
import Text.Blaze.Renderer.Pretty (renderMarkup) | |
import Text.Blaze (toMarkup) | |
import Control.Monad | |
main :: IO () | |
main = do | |
r <- get "http://www.google.com" | |
let html = H.parseLBS $ r ^. responseBody | |
rootCursor = fromDocument html | |
filtered = map node $ rootCursor $.// (element "form") | |
forM_ filtered $ \tree -> do | |
putStrLn $ renderMarkup $ toMarkup tree |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment