HASKELLでRSSファイルを解析するときにタグがミスされている場合
質問
HaskellでRSSファイルを解析する必要があります。
atTag tag = deep (isElem >>> hasName tag)
getRSSDetails = atTag "channel" >>>
proc p -> do
fTitle <- gotoAndTake "title" -< p
fLink <- gotoAndTake "link" -< p
fDescription <- gotoAndTake "description" -< p
fLanguage <- gotoAndTake "language" -< p
fGenerator <- gotoAndTake "generator" -< p
fCopyright <- gotoAndTake "copyright" -< p
fWebMaster <- gotoAndTake "webMaster" -< p
fLastBuildDate <- gotoAndTake "lastBuildDate" -< p
where gotoAndTake a = (getChildren >>>
isElem >>>
hasName a >>>
getChildren >>>
getText)
.
私の問題は、あるタグが欠けているときに、空のリストを取得するよりもRSSファイルから「LastBuildDate」と言ってみましょう。
どうすればいいですか?ありがとう、
main = do
rssFeeds <- runX (parseRSS "rss.xml" >>> getRSSDetails)
print rssFeeds
.
EDIT1:加算により解決しました
Gotoandtake A ... の終わりにorElse
(consta "")
解決
を追加して解決しました
orElse (constA "")
.
の終わりにP>
where gotoAndTake a = (getChildren >>>
isElem >>>
hasName a >>>
getChildren >>>
getText)
. 所属していません StackOverflow