Versions in this module Expand all Collapse all v1 v1.0.5 Jan 30, 2019 v1.0.1 Jan 30, 2019 Changes in this version + const BadEncodeError + const InvalidContentTypeError + const IsNotURLError + const StatusError + type FetchError struct + ErrorType int + func NewFetchError(t int, s string) *FetchError + func (fe *FetchError) Error() string type PageData + func ErrorPageData(url, ctype string, content []byte, err error) *PageData v1.0.0 Jan 28, 2019 Changes in this version + var IDCount int + func CPolicy() *bluemonday.Policy + func CommentifyString(input string) string + func DefaultClasses() map[string]string + func DefaultTemplate() *template.Template + func EscapeBytes(str []byte) string + func ExecLicenseTextTemp(templateStr string, data interface{}) (string, error) + func Fetch(url string) (string, string, []byte, error) + func Init() + func IsExistFilePath(val string) (bool, error) + func IsFilePath(val string) (bool, error) + func IsPlainTextContentType(ctype string) bool + func ParseTime(timeStr string) (*time.Time, string, error) + func ReadList(listPath string) ([]string, error) + func Sanitize(htmlContent string, policy ...*bluemonday.Policy) string + func ShowLicense() string + func TPolicy() *bluemonday.Policy + func TakeMarkedUpText(ct *html.Tokenizer, tagName []byte) string + func WriteCurrentString(tokenizer *html.Tokenizer, tokenType html.TokenType, sb *strings.Builder) + func WriteHTML(pd *PageData, cb *CardBuilder, w io.Writer, messageWriter io.Writer, ...) error + func WriteJSON(pd *PageData, w io.Writer, messageWriter io.Writer, hasPrev bool) error + type CardBuilder struct + CardTemplate *template.Template + ClassNames map[string]string + var DefaultCardBuilder *CardBuilder + func NewCardBuilder(cardtemplate *template.Template, classnames map[string]string) *CardBuilder + func (cb *CardBuilder) Execute(pd *PageData, w io.Writer) error + func (cb *CardBuilder) WriteCardHTML(pd *PageData, w io.Writer, minify bool) + type ContentFetcher struct + HTTPClient *http.Client + var DefaultContentFetcher *ContentFetcher + func NewContentFetcher(HTTPClient *http.Client) *ContentFetcher + func (cf *ContentFetcher) Fetch(url string) (string, string, []byte, error) + type ImageData struct + AltText string + FormatType string + Height int + SecureURL string + URL string + Width int + func CreateImageData(url, secureURL, formatType, alt string, width, height int) *ImageData + func NewImageData() *ImageData + type OpenGraphProtocol struct + Description string + Locale string + OgImage *ImageData + OtherAttrs map[string]string + OtherInfo map[string]string + SiteName string + Title string + TwitterID string + TwitterImage *ImageData + Type string + URL string + UpdatedTime *time.Time + func NewOGP() *OpenGraphProtocol + func (ogp *OpenGraphProtocol) Set(nameAttr, contentAttr string) + type PageData struct + CannonicalURL string + ContentType string + Description string + FaviconURL []string + ID int + OGP *OpenGraphProtocol + Title string + URL string + func BuildPageData(url string, ctype string, htmlContent string) *PageData + func FetchAndBuildPageData(URL string, messageWriter io.Writer) (*PageData, error) + func NewPageData(url string, ctype string) *PageData + func (pd *PageData) ComplementBasicFields() + func (pd *PageData) IsPlainText() bool + func (pd *PageData) ToJSON() ([]byte, error) + type PageDataBuilder struct + PreSanitizePolicy *bluemonday.Policy + TagContentSanitizePolicy *bluemonday.Policy + var DefaultPageDataBuilder *PageDataBuilder + func NewPageDataBuilder(PrePolicy, tagContentPolicy *bluemonday.Policy) *PageDataBuilder + func (p *PageDataBuilder) BuildPageData(url string, ctype string, htmlContent string) *PageData + func (p *PageDataBuilder) Sanitize(htmlContent string) string + func (p *PageDataBuilder) TagContentSanitize(str string) string