hmtpk_schedule

package module
v1.2.1 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2024 License: MIT Imports: 9 Imported by: 5

README

ХМТПК Расписание

Этот пакет предоставляет простой способ получения расписания занятий с сайта Ханты-Мансийский технолого-педагогический колледж (ХМТПК).

Установка

Для установки пакета, выполните следующую команду:

go get github.com/chazari-x/hmtpk_schedule

Использование

Пример использования:

package main

import (
	"context"
	"fmt"

	"github.com/chazari-x/hmtpk_schedule"
	"github.com/go-redis/redis/v8"
	"github.com/sirupsen/logrus"
)

func main() {
	// Инициализация клиента Redis
	redisClient := redis.NewClient(&redis.Options{
		Addr:     "localhost:6379",
		Password: "", // no password set
		DB:       0,  // use default DB
	})

	// Создание логгера
	logger := logrus.New()

	// Создание экземпляра структуры Controller
	controller := NewController(redisClient, logger)

	// Получение расписания для группы
	groupSchedule, err := controller.GetScheduleByGroup("Ваша_группа", "20.03.2024", context.Background())
	if err != nil {
		fmt.Println("Ошибка при получении расписания для группы:", err)
		return
	}

	// Вывод расписания на экран
	fmt.Println(groupSchedule)

	// Получение расписания для преподавателя
	teacherSchedule, err := controller.GetScheduleByTeacher("ФИО_преподавателя", "20.03.2024", context.Background())
	if err != nil {
		fmt.Println("Ошибка при получении расписания для преподавателя:", err)
		return
	}

	// Вывод расписания на экран
	fmt.Println(teacherSchedule)
}

Примечание

Данный пакет использует веб-скрейпинг для извлечения данных с сайта Ханты-Мансийского технолого-педагогического колледжа. В случае изменения структуры сайта, пакет может перестать корректно работать. Если вы столкнулись с проблемой, пожалуйста, создайте issue на GitHub.

Лицензия

Этот проект лицензирован в соответствии с условиями лицензии MIT. См. файл LICENSE для получения дополнительной информации.

Documentation

Index

Constants

This section is empty.

Variables

View Source
var BadRequest = errors.New("bad request")

Functions

This section is empty.

Types

type Controller

type Controller struct {
	// contains filtered or unexported fields
}

func NewController

func NewController(client *redis.Client, logger *logrus.Logger) *Controller

func (*Controller) GetScheduleByGroup

func (c *Controller) GetScheduleByGroup(group, date string, ctx context.Context) ([]Schedule, error)

GetScheduleByGroup по идентификатору группы и дате получает расписание на неделю

func (*Controller) GetScheduleByTeacher

func (c *Controller) GetScheduleByTeacher(teacher, date string, ctx context.Context) ([]Schedule, error)

GetScheduleByTeacher по ФИО преподавателя и дате получает расписание преподавателя

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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