mirror of
https://github.com/nkanaev/yarr.git
synced 2025-05-24 00:33:14 +00:00
gofmt -s -w .
This commit is contained in:
parent
614dcc8975
commit
2df2f41516
@ -2,10 +2,10 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"io"
|
||||||
"log"
|
"log"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
"io"
|
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/nkanaev/yarr/src/content/readability"
|
"github.com/nkanaev/yarr/src/content/readability"
|
||||||
|
@ -23,8 +23,7 @@ func TestQuery(t *testing.T) {
|
|||||||
</html>
|
</html>
|
||||||
`))
|
`))
|
||||||
nodes := Query(node, "p")
|
nodes := Query(node, "p")
|
||||||
match := (
|
match := (len(nodes) == 1 &&
|
||||||
len(nodes) == 1 &&
|
|
||||||
nodes[0].Type == html.ElementNode &&
|
nodes[0].Type == html.ElementNode &&
|
||||||
nodes[0].Data == "p")
|
nodes[0].Data == "p")
|
||||||
if !match {
|
if !match {
|
||||||
@ -50,8 +49,7 @@ func TestQueryMulti(t *testing.T) {
|
|||||||
</html>
|
</html>
|
||||||
`))
|
`))
|
||||||
nodes := Query(node, "p , span")
|
nodes := Query(node, "p , span")
|
||||||
match := (
|
match := (len(nodes) == 3 &&
|
||||||
len(nodes) == 3 &&
|
|
||||||
nodes[0].Type == html.ElementNode && nodes[0].Data == "p" &&
|
nodes[0].Type == html.ElementNode && nodes[0].Data == "p" &&
|
||||||
nodes[1].Type == html.ElementNode && nodes[1].Data == "p" &&
|
nodes[1].Type == html.ElementNode && nodes[1].Data == "p" &&
|
||||||
nodes[2].Type == html.ElementNode && nodes[2].Data == "span")
|
nodes[2].Type == html.ElementNode && nodes[2].Data == "span")
|
||||||
|
@ -3,7 +3,7 @@ package htmlutil
|
|||||||
import "testing"
|
import "testing"
|
||||||
|
|
||||||
func TestExtractText(t *testing.T) {
|
func TestExtractText(t *testing.T) {
|
||||||
testcases := [][2]string {
|
testcases := [][2]string{
|
||||||
{"hello", "<div>hello</div>"},
|
{"hello", "<div>hello</div>"},
|
||||||
{"hello world", "<div>hello</div> world"},
|
{"hello world", "<div>hello</div> world"},
|
||||||
{"helloworld", "<div>hello</div>world"},
|
{"helloworld", "<div>hello</div>world"},
|
||||||
|
@ -129,8 +129,7 @@ func removeUnlikelyCandidates(root *html.Node) {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
blacklisted := (
|
blacklisted := (blacklistCandidatesRegexp.MatchString(str) ||
|
||||||
blacklistCandidatesRegexp.MatchString(str) ||
|
|
||||||
(unlikelyCandidatesRegexp.MatchString(str) &&
|
(unlikelyCandidatesRegexp.MatchString(str) &&
|
||||||
!okMaybeItsACandidateRegexp.MatchString(str)))
|
!okMaybeItsACandidateRegexp.MatchString(str)))
|
||||||
if blacklisted && node.Parent != nil {
|
if blacklisted && node.Parent != nil {
|
||||||
@ -198,7 +197,7 @@ func getCandidates(root *html.Node) nodeScores {
|
|||||||
// Scale the final candidates score based on link density. Good content
|
// Scale the final candidates score based on link density. Good content
|
||||||
// should have a relatively small link density (5% or less) and be mostly
|
// should have a relatively small link density (5% or less) and be mostly
|
||||||
// unaffected by this operation
|
// unaffected by this operation
|
||||||
for node, _ := range scores {
|
for node := range scores {
|
||||||
scores[node] *= (1 - getLinkDensity(node))
|
scores[node] *= (1 - getLinkDensity(node))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -138,7 +138,7 @@ var allowedTags = sset([]string{
|
|||||||
"wbr",
|
"wbr",
|
||||||
})
|
})
|
||||||
|
|
||||||
var allowedAttrs = map[string]set {
|
var allowedAttrs = map[string]set{
|
||||||
"img": sset([]string{"alt", "title", "src", "srcset", "sizes"}),
|
"img": sset([]string{"alt", "title", "src", "srcset", "sizes"}),
|
||||||
"audio": sset([]string{"src"}),
|
"audio": sset([]string{"src"}),
|
||||||
"video": sset([]string{"poster", "height", "width", "src"}),
|
"video": sset([]string{"poster", "height", "width", "src"}),
|
||||||
|
@ -58,7 +58,7 @@ func (s *Server) handler() http.Handler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (s *Server) handleIndex(c *router.Context) {
|
func (s *Server) handleIndex(c *router.Context) {
|
||||||
c.HTML(http.StatusOK, assets.Template("index.html"), map[string]interface{} {
|
c.HTML(http.StatusOK, assets.Template("index.html"), map[string]interface{}{
|
||||||
"settings": s.db.GetSettings(),
|
"settings": s.db.GetSettings(),
|
||||||
"authenticated": s.Username != "" && s.Password != "",
|
"authenticated": s.Username != "" && s.Password != "",
|
||||||
})
|
})
|
||||||
|
@ -241,5 +241,4 @@ func m04_item_podcasturl(tx *sql.Tx) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// TODO: description -> content
|
// TODO: description -> content
|
||||||
|
Loading…
x
Reference in New Issue
Block a user