fix(rss): get enclosure from SyndEntry attributes first (#799)
This commit is contained in:
parent
1578ba6887
commit
26b8bc2e14
@ -120,12 +120,19 @@ class RssHelper @Inject constructor(
|
|||||||
rawDescription = (content ?: desc) ?: "",
|
rawDescription = (content ?: desc) ?: "",
|
||||||
shortDescription = Readability.parseToText(desc ?: content, syndEntry.link).take(110),
|
shortDescription = Readability.parseToText(desc ?: content, syndEntry.link).take(110),
|
||||||
fullContent = content,
|
fullContent = content,
|
||||||
img = findThumbnail(content ?: desc),
|
img = findThumbnail(syndEntry) ?: findThumbnail(content ?: desc),
|
||||||
link = syndEntry.link ?: "",
|
link = syndEntry.link ?: "",
|
||||||
updateAt = preDate,
|
updateAt = preDate,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun findThumbnail(syndEntry: SyndEntry): String? {
|
||||||
|
if (syndEntry.enclosures.isNullOrEmpty()) {
|
||||||
|
return null
|
||||||
|
}
|
||||||
|
return syndEntry.enclosures.first()?.url
|
||||||
|
}
|
||||||
|
|
||||||
fun findThumbnail(text: String?): String? {
|
fun findThumbnail(text: String?): String? {
|
||||||
text ?: return null
|
text ?: return null
|
||||||
val enclosure = enclosureRegex.find(text)?.groupValues?.get(1)
|
val enclosure = enclosureRegex.find(text)?.groupValues?.get(1)
|
||||||
|
@ -71,4 +71,13 @@ class RssHelperTest {
|
|||||||
Assert.assertEquals(enclosureUrlString1, rssHelper.findThumbnail(imageHtmlCase1))
|
Assert.assertEquals(enclosureUrlString1, rssHelper.findThumbnail(imageHtmlCase1))
|
||||||
Assert.assertEquals(imageUrlString, rssHelper.findThumbnail(imageHtmlCase2))
|
Assert.assertEquals(imageUrlString, rssHelper.findThumbnail(imageHtmlCase2))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun testEnclosureNoFilenameExtension() {
|
||||||
|
val result = "https://pic.clubic.com/v1/images/1882727/raw"
|
||||||
|
val case = """
|
||||||
|
<enclosure url="$result" type="image/jpeg" length="0"/>
|
||||||
|
"""
|
||||||
|
Assert.assertEquals(result, rssHelper.findThumbnail(case))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user