aboutsummaryrefslogtreecommitdiff
path: root/src/lib/haskell/FetchAd.hs
diff options
context:
space:
mode:
authorJoris2019-09-03 21:01:53 +0200
committerJoris2019-09-03 21:04:40 +0200
commit5cedcecd6ae31e2485dcab2ddd74c74a4779545d (patch)
treebb54b8f1bbf1f5baaf94c28e4443fb17321d5fc7 /src/lib/haskell/FetchAd.hs
parent8d14cb80170a8a15a0ced13bc7fe5cd16b908974 (diff)
downloadad-listener-5cedcecd6ae31e2485dcab2ddd74c74a4779545d.tar.gz
ad-listener-5cedcecd6ae31e2485dcab2ddd74c74a4779545d.tar.bz2
ad-listener-5cedcecd6ae31e2485dcab2ddd74c74a4779545d.zip
Make LBC to work
Use request headers to simulate a normal browser
Diffstat (limited to 'src/lib/haskell/FetchAd.hs')
-rw-r--r--src/lib/haskell/FetchAd.hs20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/lib/haskell/FetchAd.hs b/src/lib/haskell/FetchAd.hs
index a206181..1708fe4 100644
--- a/src/lib/haskell/FetchAd.hs
+++ b/src/lib/haskell/FetchAd.hs
@@ -5,7 +5,7 @@ module FetchAd
) where
import Data.Either (rights)
-import Data.Text.Encoding as T
+import Network.HTTP.Conduit (Manager)
import Model.Ad (Ad)
import Model.URL (URL)
@@ -14,23 +14,23 @@ import qualified Parser.OuestFranceParser as OuestFranceParser
import qualified Parser.SeLogerParser as SeLogerParser
import qualified Utils.HTTP as HTTP
-leboncoin :: [URL] -> IO [Ad]
-leboncoin urls =
+leboncoin :: Manager -> [URL] -> IO [Ad]
+leboncoin manager urls =
fmap (concat . map LeboncoinParser.parse . rights)
. sequence
- . map (HTTP.get T.decodeLatin1)
+ . map (HTTP.get manager)
$ urls
-ouestFrance :: [URL] -> IO [Ad]
-ouestFrance urls =
+ouestFrance :: Manager -> [URL] -> IO [Ad]
+ouestFrance manager urls =
fmap (concat . map OuestFranceParser.parse . rights)
. sequence
- . map (HTTP.get T.decodeUtf8)
+ . map (HTTP.get manager)
$ urls
-seLoger :: [URL] -> IO [Ad]
-seLoger urls =
+seLoger :: Manager -> [URL] -> IO [Ad]
+seLoger manager urls =
fmap (concat . map SeLogerParser.parse . rights)
. sequence
- . map (HTTP.get T.decodeUtf8)
+ . map (HTTP.get manager)
$ urls