parser

package
v0.0.0-...-c68daa7 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func WriteJsonFile

func WriteJsonFile(logger *slog.Logger, entries []feed.Entry, outputPath string)

Types

type Meta

type Meta struct {
	Updated *time.Time `json:"updated"`
	ID      string     `json:"id"`
	Self    string     `json:"self"`
	Prev    string     `json:"prev"`
	First   string     `json:"first"`
	Next    string     `json:"next"`
	Last    string     `json:"last"`
}

func NewMeta

func NewMeta() *Meta

NewMeta инициализирует и возвращает новый объект Meta.

Он не принимает параметров и возвращает указатель на объект Meta. Это объект, который содержит навигационную информацию о страницах ленты. Время последнего обновления страницы ленты. Адрес текущей страницы, адрес следующей станицы, адрес предыдущей и адрес последней и первой страницы в ленте. С помощью этой информации можно совершать обход ленты.

type Parser

type Parser struct {
	ID             uuid.UUID
	ManticoreIndex string
	SaveToFile     bool
	ResourceID     int
	Lang           string
	URI            string
	PageCount      int
	OutputPath     string
	Delay          *time.Duration
	Meta           *Meta
	// contains filtered or unexported fields
}

func New

func New(uri config.StartURL, cfg *config.Config, entries *feed.Entries) Parser

func (*Parser) NewFilepath

func (p *Parser) NewFilepath(url string) string

func (*Parser) Parse

func (p *Parser) Parse(ctx context.Context, log *slog.Logger)

Parse парсит указанное количество страниц rss ленты сайта кремля. Сохраняет каждую страницу в отдельный json файл. При каждом успешном парсинге возвращает ссылку на следующую страницу rss ленты. Делает установленную в конфиге паузу между парсингами (5 сек по умолчанию). Используется logger для записи различных событий во время анализа.

Jump to

Keyboard shortcuts

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