From 0fc12d23f477852d166b4d4cedfabf2add521d80 Mon Sep 17 00:00:00 2001 From: nlitkowski Date: Wed, 7 Apr 2021 02:20:30 +0200 Subject: [PATCH] WIP --- app/ZborBielawa.hs | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/app/ZborBielawa.hs b/app/ZborBielawa.hs index 30aa58d..45f3ba8 100644 --- a/app/ZborBielawa.hs +++ b/app/ZborBielawa.hs @@ -14,9 +14,11 @@ import Text.Printf extractNestedLinksWithText xpathCondition = (downloadDocument &&& this) >>> first (getXPathTrees xpathCondition - >>> ((getXPathTrees "//a" >>> getAttrValue "href") - &&& (listA (deep isText >>> getText) - >>> arr (intercalate " ")))) + >>> ( + (getXPathTrees "//a" >>> getAttrValue "href") + &&& (listA (deep isText >>> getText) + >>> arr (intercalate " ")) + )) >>> arr rotateSecTh >>> first expandURIFixed @@ -25,6 +27,14 @@ extractRecords = extractLinksWithText "(//aside[@class='widget widget_maxmegamen >>> first (first (extractNestedLinksWithText "//big/a[contains(@href,'.pdf')][img]")) -- pobieramy stronę z adresu URL i wyciągamy linki z tej strony pasujące do wyrażenia XPathowego -- ostatecznie wyjdą krotki (((adres URL, tytuł nr-u), tytuł podstrony 2), tytuł podstrony 1) + +extractRecords2 = proc x -> do + (a, b) <- extractLinksWithText "(//aside[@class='widget widget_maxmegamenu']//a[@class='mega-menu-link'])[1]" -< x -- pary adres-tytuł podstrony + a' <- (extractLinksWithText "(//aside[@class='widget widget_maxmegamenu']//a[@class='mega-menu-link'])[1]") -< a -- pobieramy podstronę i kolejne podstrony z menu + a'' <- (extractNestedLinksWithText "//big/a[contains(@href,'.pdf')][img]") -< a' -- pobieramy stronę z adresu URL i wyciągamy linki z tej strony pasujące do wyrażenia XPathowego + returnA -< a'' + -- ostatecznie wyjdą krotki (((adres URL, tytuł nr-u), tytuł podstrony 2), tytuł podstrony 1) + -- ... a tutaj te krotki przerabiamy do docelowej struktury ShadowItem toShadowItem :: (((String, String), String), String) -> ShadowItem toShadowItem (((url, releaseTitle), collectionTitle), categoryTitle) =