Skip to content

Библиотека, облегчающая парсинг сайта https://mangalib.me/

License

Notifications You must be signed in to change notification settings

kooflixy/mangalib-parser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

👨‍💻️Author: kooflixy

Mangalib_parser - библиотека для парсинга различных структур сайта https://mangalib.me/ и дочерних ему

RUS

Навигация

Установка

pip install git+https://github.com/kooflixy/mangalib-parser.git

Классы

User class

class User(id: int, autoparse: bool=True)

Класс, собирающий информацию о пользователе и представляющий его.

User.id
Уникальный айди пользователя.
User.autoparse
Параметр, от которого зависит, будет ли парситься больше информации о пользователя при инициализации нового объекта класса. По умолчанию True.
User.url
Ссылка на профиль пользователя.
User.username
Имя в профиле пользователя.
User.about
Описание в профиле пользователя.
User.last_online_at
Дата и время, когда пользователь был в сети в последний раз.
User.created_at
Дата и время создания профиля пользователя.
User.level
Информация об уровне пользователя.
User.teams
Список с командами переводчиков, в которых состоит пользователь.

Методы

User.get_bookmarks(sort_by: str='name', sort_type: str='desc', status: Status=statuses.ALL, site: Site=sites.MANGALIB, as_json: bool=False, count: int=None) -> list[Bookmark]|dict

Возвращает закладки пользователя.

Параметры:
sort_by :
  • 'name' - cортировка по английскому алфавиту.
  • 'rus_name' - cортировка по русскому алфавиту.
  • 'created_at' - cортировка по дате добавления.
  • 'updated_at' - cортировка по дате чтения.
  • 'last_chapter_at' - cортировка по дате обновления глав.
sort_type :
  • 'desc' - сортировка по убыванию.
  • 'asc' - сортировка по возрастанию.
status :

То, какого статуса будут закладки, которые будут парситься(Читаю, Смотрю, Прочитано и т.д.). По умолчанию стоит ВСЕ. Импорт с помощью from mangalib_parser import statuses

site :

То, с какого сайта будут закладки, которые будут парситься(Мангалиб, Ранобелиб, Анимелиб и т.д.). По умолчанию стоит Мангалиб. Импорт с помощью from mangalib_parser import sites

as_json :

От этого параметра зависит, будет ли полученный словарь с закладками конвертирвоаться в лист из класса Bookmark.

count :

Сколько закладок возвратит функция.

User.get_comments(sort_by: str='id', sort_type: str='desc', as_json: bool=False, count: int=None) -> list[Comment]|dict

Возвращает комментарии пользователя.

Параметры:
sort_by :
  • 'id' - сортировка по времени.
  • 'votes' - сортировка по рейтингу.
sort_type :
  • 'desc' - сортировка по убыванию.
  • 'asc' - сортировка по возрастанию.
as_json :

От этого параметра зависит, будет ли полученный словарь с комментариями конвертирвоаться в лист из класса Comment.

count :

Сколько закладок возвратит функция.

User.get_friends(as_json: bool=False, count: int=None) -> list[Friend]|dict

Возвращает друзей пользователя.

Параметры:
as_json :

От этого параметра зависит, будет ли полученный словарь с друзьями конвертирвоаться в лист из класса Friend.

count :

Сколько друзей возвратит функция.

Bookmark class

class Bookmark(chapter: int|None, page, page: int, status: statuses.Status, created_at: datetime, updated_at: datetime, name: str, rus_name: str, slug_url: str, site: sites.Site, model: str, urL: str)

Закладка тайтла.

Bookmark.chapter
Глава, на которой остановился пользователь при чтении.
Bookmark.page
Страница, на которой остановился пользователь при чтении.
Bookmark.status
Статус чтения тайтла(Читаю, Прочитано и т.д.). Импорт с помощью from mangalib_parser import statuses
Bookmark.created_at
Дата и время добавления тайтла в закладки.
Bookmark.updated_at
Дата и время последней поставленной закладки тайтла.
Bookmark.name
Оригинальное название тайтла.
Bookmark.rus_name
Название тайтла на русском языке.
Bookmark.slug_url
Уникальный слаг тайтла с помощью которого создаются ссылки связанные с ним. Также используется для быстрого нахождения тайтла в базе данных.
Bookmark.site
Сайт, на котором опубликован данный тайтл. Можно импоритровать с помощью from mangalib_parser import sites
Bookmark.model
Модель, тип или же класс объекта. Можно импоритровать с помощью from mangalib_parser import models

Comment class

class Comment(chapter: int|None, page, page: int, status: statuses.Status, created_at: datetime, updated_at: datetime, name: str, rus_name: str, slug_url: str, site: sites.Site, model: str, urL: str)

Комментарий пользователя.

Comment.comment
Текст комментария с html тегами.
Comment.id
Уникальный айди комментария.
Comment.created_at
Дата и время написания комментария.
Comment.user_id
Уникальный айди пользователя, написавшего комментарий.
Comment.votes
Список с лайками и дизлайками комментария, хранится в виде листа, где на первом месте количество дизлайков, а на втором количество лайков.
Comment.relation_type
Модель, тип или же класс объекта, к котороиу был написан комментарий. Можно импоритровать с помощью from mangalib_parser import models
Comment.slug_url
Уникальный слаг тайтла/коллекции/отзыва с помощью которого создаются ссылки связанные с ним. Также используется для быстрого нахождения тайтла/коллекции/отзыва в базе данных.
Comment.site
Сайт, на котором опубликован данный тайтл. Можно импоритровать с помощью from mangalib_parser import sites
Comment.url
Полная ссылка на комментарий.

Friend class

class Friend(user_id: int, **kwargs)

Друг пользователя.

Friend.user_id
Уникальный айди пользователя на профиль друга.
Friend.comment
Как друг записан у пользователя.
Friend.created_at
Дата и время добавления друга.
Friend.status
Статус отношений с другом(Заявка отправлена, Заявка принята и т.д.)

Team class

class Team(id: int, slug_url: str, autparse: bool=True)

Команда переводчиков.

Team.user_id
Уникальный айди команды.
Team.slug_url
Уникальный слаг команды.
Team.autoparse
Параметр, от которого зависит, будет ли парситься больше информации о команде при инициализации нового объекта класса. По умолчанию True.
Team.url
Ссылка на профиль команды.
Team.name
Название команды.
Team.discord
Ссылка на Discord команды.
Team.vk
Ссылка на ВКонтакте команды.
Team.website
Ссылка на вебсайт команды.

TeamMember class

class TeamMember(user_id: int, **kwargs)

Участник команды переводчиков.

TeamMember.user_id
Уникальный айди пользователя, являющегося участником команды.
TeamMember.roles
Роли, принадлежащие участнику команды.
TeamMember.permissions
Права, принадлежащие участнику команды.
TeamMember.team_id
Айди команды, участником которой является пользователь.

About

Библиотека, облегчающая парсинг сайта https://mangalib.me/

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages