0niel / university-app

A mobile application for the MIREA - Russian Technological University, which includes a schedule, news and many other functions
MIT License
181 stars 27 forks source link

Нестабильная работа системы новостей #231

Closed d3adwolf closed 1 year ago

d3adwolf commented 2 years ago

Введение в проблему "Дублирование постов в новостях": Почему-то новость за 30 апреля дублируется у меня два раза, раньше вроде такого не замечал, но что есть, то есть. А вот лекции от КРОКа были классными.

Смартфон:

d3adwolf commented 2 years ago

UPD: Сейчас решил проверить, вообще дичь, какая-то аномально ненормальная работа системы новостей.

Dragonprod commented 2 years ago

@d3adwolf, Странное поведение, при перезаходе такой же результат?

d3adwolf commented 2 years ago

@d3adwolf, Странное поведение, при перезаходе такой же результат?

Сейчас нормально, если учитывать, что приложение я закрыл, а не свернул, но такое поведение наблюдал не раз, в будущем постараюсь понять из-за какой причины это всё творится.

Dragonprod commented 2 years ago

@d3adwolf, Странное поведение, при перезаходе такой же результат?

Сейчас нормально, если учитывать, что приложение я закрыл, а не свернул, но такое поведение наблюдал не раз, в будущем постараюсь понять из-за какой причины это всё творится.

Дубликаты нашли и оперативно удалили, ошибку будем искать. Спасибо.

0niel commented 2 years ago

Такое поведение возникает из-за редактирования новостных постов на сайте mirea.ru. Мы парсим новости с официального сайта в нашу систему управления контента, так как это:

  1. Будет работать быстрее, нежели если мы будем парсить новости прямо на стороне клиента
  2. Позволяет фильтровать новости по тегам и сортировать по дате
  3. Позволяет кешировать и оптимизировать изображения и прочий контент, который содержится в новостях

Новые новостные посты мы проверяем с помощью парсера https://github.com/mirea-ninja/rtu-mirea-news-parser, сравнивая содержимое новостей на схожесть. Если новость отличается от сохранённых, то мы добавляем её в CMS. Нет другого способа для идентификации новостей. На сайте не пишут точную дату и время публикации (только дату), не пишут автора, нет никакого ID новости, а в slug используется транслитерированный заголовок.

Если содержимое новости после редактирования сильно меняется, то появляются такие дубликаты.

Надеемся, что нам вскоре удастся получить API новостей официального сайта, ибо это избавит нас от многих глупых проблем. Мы ведём работу в этом направлении.

0niel commented 1 year ago

Должно быть исправлено в https://github.com/mirea-ninja/rtu-mirea-news-parser/commit/0ec9952a392711704508dcbc50bc1aa32e8d3eb9