1
0
Fork 0
mirror of https://github.com/miniflux/v2.git synced 2025-07-12 16:58:36 +00:00

refactor: use a better construct than doc.Find(…).First()

As mentioned in goquery's documentation (https://pkg.go.dev/github.com/PuerkitoBio/goquery#Single):

> By default, Selection.Find and other functions that accept a selector string
to select nodes will use all matches corresponding to that selector. By using
the Matcher returned by Single, at most the first match will be selected.
>
> The one using Single is optimized to be potentially much faster on large documents.
This commit is contained in:
Julien Voisin 2024-12-12 03:40:55 +00:00 committed by GitHub
parent 68448b4abb
commit 1b0b8b9c42
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 18 additions and 18 deletions

View file

@ -44,7 +44,7 @@ func addImageTitle(entryURL, entryContent string) string {
img.ReplaceWithHtml(`<figure><img src="` + srcAttr + `" alt="` + altAttr + `"/><figcaption><p>` + html.EscapeString(titleAttr) + `</p></figcaption></figure>`)
})
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}
@ -76,7 +76,7 @@ func addMailtoSubject(entryURL, entryContent string) string {
a.AppendHtml(" [" + html.EscapeString(subject) + "]")
})
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}
@ -160,7 +160,7 @@ func addDynamicImage(entryURL, entryContent string) string {
}
if changed {
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}
@ -197,7 +197,7 @@ func addDynamicIframe(entryURL, entryContent string) string {
})
if changed {
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}
@ -217,7 +217,7 @@ func fixMediumImages(entryURL, entryContent string) string {
}
})
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}
@ -239,7 +239,7 @@ func useNoScriptImages(entryURL, entryContent string) string {
}
})
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}
@ -317,7 +317,7 @@ func removeCustom(entryContent string, selector string) string {
doc.Find(selector).Remove()
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}
@ -344,7 +344,7 @@ func applyFuncOnTextContent(entryContent string, selector string, repl func(stri
doc.Find(selector).Each(treatChildren)
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}
@ -401,7 +401,7 @@ func addHackerNewsLinksUsing(entryContent, app string) string {
}
})
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}
@ -420,7 +420,7 @@ func removeTables(entryContent string) string {
for _, selector := range selectors {
for {
loopElement = doc.Find(selector).First()
loopElement = doc.FindMatcher(goquery.Single(selector))
if loopElement.Length() == 0 {
break
@ -436,6 +436,6 @@ func removeTables(entryContent string) string {
}
}
output, _ := doc.Find("body").First().Html()
output, _ := doc.FindMatcher(goquery.Single("body")).Html()
return output
}