aboutsummaryrefslogtreecommitdiff
path: root/src/Parser/Resume.hs
diff options
context:
space:
mode:
authorJoris Guyonvarch2015-04-11 19:20:04 +0200
committerJoris Guyonvarch2015-04-11 19:20:04 +0200
commit4ddd6d1f6df2bab75d42b6d45b816e92e7173529 (patch)
tree09ddfd62fe32e210a87eb15eb86ee07ab9f24623 /src/Parser/Resume.hs
parent88b7f848da3515d67cfb989b98ad5285a037993e (diff)
downloadad-listener-4ddd6d1f6df2bab75d42b6d45b816e92e7173529.tar.gz
ad-listener-4ddd6d1f6df2bab75d42b6d45b816e92e7173529.tar.bz2
ad-listener-4ddd6d1f6df2bab75d42b6d45b816e92e7173529.zip
Fixing parsing errors, and use Text from now
Diffstat (limited to 'src/Parser/Resume.hs')
-rw-r--r--src/Parser/Resume.hs13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/Parser/Resume.hs b/src/Parser/Resume.hs
index bd73912..6cd4415 100644
--- a/src/Parser/Resume.hs
+++ b/src/Parser/Resume.hs
@@ -3,6 +3,7 @@ module Parser.Resume
) where
import Data.Maybe (catMaybes)
+import qualified Data.Text as T
import Text.HTML.TagSoup
@@ -10,7 +11,7 @@ import Model.Resume
import Parser.Utils
-parseResumes :: String -> [Resume]
+parseResumes :: T.Text -> [Resume]
parseResumes page =
case sections (~== "<div class=list-lbc>") (parseTags page) of
[] ->
@@ -19,9 +20,9 @@ parseResumes page =
let lbcTags = takeWhile (~/= "<div id=alertesCartouche>") sectionTags
in catMaybes . fmap parseResume $ partitions (~== "<a>") lbcTags
-parseResume :: [Tag String] -> Maybe Resume
+parseResume :: [Tag T.Text] -> Maybe Resume
parseResume item = do
- name <- getTagText "<h2 class=title>" item
- let price = getTagText "<div class=price>" item
- url <- getTagAttribute "<a>" "href" item
- return Resume { name = name, price = price, url = url }
+ name <- getTagTextAfter "<h2 class=title>" item
+ let price = getTagTextAfter "<div class=price>" item
+ url <- getTagAttribute "<a>" (T.pack "href") item
+ return Resume { name = name, price = price, url = T.unpack url }