questionanswer

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 15, 2024 License: BSD-3-Clause Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const TypeComment = 3

Variables

This section is empty.

Functions

func WrapPhrase

func WrapPhrase(phrase, text string) string

WrapPhrase wraps a specific phrase in a text with a strong tag.

Types

type Comment

type Comment struct {
	Username   string
	Text       string
	AvatarFile *url.URL
	Role       string
	Datetime   *time.Time
	DataID     string
	Type       int
	Position   int
}

type Entry

type Entry struct {
	Url       *url.URL
	Title     string
	Video     *url.URL
	Datetime  *time.Time
	Content   []QuestionAnswer
	Fragments []Fragment
	Comments  []Comment
}

func NewEntry

func NewEntry(url *url.URL) *Entry

func (*Entry) FetchData

func (entry *Entry) FetchData(client *httpclient.HttpClient) error

func (*Entry) Parse

func (e *Entry) Parse(resBytes []byte) error

func (*Entry) SplitIntoChunks

func (e *Entry) SplitIntoChunks(els *goquery.Selection)

SplitIntoChunks разбивает текст на вопросы и ответы. Он основан на поиске конкретных строк в тексте. Если нашелся текст "Ведущий:", то он начинает добавлять текст в массив вопросов. Если нашелся текст "Валерий Викторович Пякин:", то он начинает добавлять текст в массив ответов. Если нашелся текст "Ведущий:" или "Валерий Викторович Пякин:" в середине массива текста, то он создает новый QuestionAnswer, добавляет его в массив Content и начинает новый цикл.

type Fragment

type Fragment struct {
	QuestionAnswer string
	Chunk          int
}

type QuestionAnswer

type QuestionAnswer struct {
	Question []string
	Answer   []string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL