parser_v1/README.md
синечка ♡ 7af7f58153
в2 чтоли
2025-03-01 02:25:16 +03:00

23 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Что енто?
Исходный код парсера из бота, чтобы удобно отображать расписание в телеге
# Известные проблемы
- Не парсится суббота
- ~~Иногда не парсятся некоторые пары~~ Теперь **все** должно парсится, даже самый мерзкий текст
- Иногда не парсятся целые курсы (временный фикс - начать парсинг не с ячейки `С8`, а с `С9`, уже добавлено)
# Файлы
### `files.json`
Этот файл содержит словарь со всеми ексель файлами. Обновлять словарь нужно раз в год. Для этого надо зайти на https://rasp.pgups.ru/schedule/group и выполнить скрипт
```js
let w={};document.querySelectorAll('div.kt-portlet:nth-child(2) > div:nth-child(1) > div:nth-child(1) > *').forEach(e => {n=e.textContent.trim();n.indexOf('курс')==-1?function(){w[n]={};c=n}():w[c][n]=e.href});document.body.innerHTML=JSON.stringify(w)
```
Содержимое страницы поменяется, новый текст нужно скопировать и заменить полностью в `files.json`
...я бы мог и сам автоматизировать это, но мне впадлу...
### `config.py`
В этом скрипте надо создать переменную `LOAD`, куда нужно будет поместить словарь, где ключем будет названеи факультета, а значением будет список курсов, которые будут скачиваться. Их лучше взять из файла выше
### `parse.py`
Сам парсер. Обновляет все расписание автоматически при импорте/запуске