diff options
| author | unwox <me@unwox.com> | 2024-10-31 16:42:53 +0600 |
|---|---|---|
| committer | unwox <me@unwox.com> | 2024-10-31 16:42:53 +0600 |
| commit | e48032674a8d0d9f28afdb3ef1d36add5096f043 (patch) | |
| tree | f0e9e8719f552aa9880f098ad15ffaa9b4b76336 | |
| parent | b1e6651b7e409dcbc644084f9f4a051bd97087e0 (diff) | |
fix parsing of ipuer products without descriptions
| -rw-r--r-- | parser/ipuer.fnl | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/parser/ipuer.fnl b/parser/ipuer.fnl index 9a244e2..b501a35 100644 --- a/parser/ipuer.fnl +++ b/parser/ipuer.fnl @@ -25,17 +25,25 @@ (parser.tag :a {:href "*"} (parser.tag :span {} (peg.Cg (parser.till "</span>") :title))))) ;; description - (parser.anywhere - (parser.tag :div {:class "card-product_description"} - (peg.Cg (parser.till "</div>") :description))) - ;; price - (parser.anywhere + (+ + (parser.anywhere (parser.tag :span {:class "card-price_new"} (* (peg.Cg - (* parser.pegs.number + (* parser.pegs.number (parser.maybe (* " " parser.pegs.number))) - :price) - " р."))) + :price) + " р."))) + (* + (parser.anywhere + (parser.tag :div {:class "card-product_description"} + (peg.Cg (parser.till "</div>") :description))) + (parser.anywhere + (parser.tag :span {:class "card-price_new"} + (* (peg.Cg + (* parser.pegs.number + (parser.maybe (* " " parser.pegs.number))) + :price) + " р."))))) (parser.anywhere (+ (parser.tag :a {:data-url "*" :class "*" :data-add-text "*"} "В корзину") (parser.tag :a {:data-url "*" :class "*"} "В корзину"))))) |
