Jump to content


Photo

Malhelper


  • Please log in to reply
2 replies to this topic

#1 XuT

XuT

    Активный участник

  • Пользователи
  • PipPipPip
  • 230 posts
  • Пол:Мужской
  • Город:Реутов

Posted 20 September 2012 - 11:28 PM

Мой знакомый боевой программист сделал утилиту для сервиса myanimelist.net (смотреть приложенный файл).
Идея следующая: вбивается имя пользователя, после чего утилита сканирует весь его аниме-лист. На выходе: список связанных аниме, которых нет в его списке.
Допустим у пользователя в списке есть Naruto, только первый сезон. Тогда программа на выходе покажет, что в списке не хватает сиквела - Naruto: Shippuuden, разных movie, ova и прочих specials.
Вообщем, программа для тех, кому некогда следить за выходом новых сезонов, но при это хочется увидеть продолжение полюбившейся серии аниме.

Программка сверстана на коленке, другой минус - для работы требует .NET Framework версии 4.5.
Если кому нужно - пробуйте, тестируйте, предлагайте как и что улучшить. Вообщем, отписываемся.

Attached Files


Edited by XuT, 20 September 2012 - 11:28 PM.

  • 0

#2 XuT

XuT

    Активный участник

  • Пользователи
  • PipPipPip
  • 230 posts
  • Пол:Мужской
  • Город:Реутов

Posted 12 April 2016 - 11:03 PM

Время идет, список разрастается. Снова понадобилось выявить все взаимосвязанные объекты, не добавленные в список.
Старая утилита уже устарела, разбираться с ней нет желания.

Написал для себя скрипт на Python 3.5.1. Выкладываю здесь, может кому пригодится.

Для получения результата модифицируются строки:
1. user = u'user'
В кавычках указать имя пользователя.
2. flag_modernliststyle = True
Обращаю внимание, что скрипт работает как неавторизованный пользователь, поэтому он будет ориентироваться на настройки пользователя, чей список анализируется, а не на настройки пользователя, который просматривает чужой список.
Соответственно если в настройках пользователя для списка выбран List Style Design = Modern Template, то в строке скрипта указать True, если же выбран List Style Design = Classic Template, то в строке скрипта указать False.
3. flag_manga = True
Если нужно просмотреть список манги, то в строке скрипта указать True, если смотреть не нужно, то указать False.
4. flag_anime = True
Если нужно просмотреть список аниме, то в строке скрипта указать True, если смотреть не нужно, то указать False.

Для манги просматриваются только ссылки на другую мангу, для аниме - только ссылки на другое аниме.
Поиск осуществляется на всю глубину связанных объектов (то есть, допустим в списке есть объект Anime1, у него есть связь с объектом Anime2, а у того - с Anime3, тогда в результат будут выведены и Anime2 и Anime3, как связанные с Anime1), поэтому чем больше список связанных ссылок, тем дольше скрипт будет отрабатывать.

Attached Files


  • 0

#3 XuT

XuT

    Активный участник

  • Пользователи
  • PipPipPip
  • 230 posts
  • Пол:Мужской
  • Город:Реутов

Posted 04 May 2016 - 12:04 AM

Так как создатели сайта решили уменьшить нагрузку на сервер, предыдущий способ считывания перестал работать. Оно и к лучшему - переписал скрипт (все тот же Python 3.5.1), теперь работать с ним проще.

Для получения результата модифицируются строки:
1. user = u'user'
В кавычках указать имя пользователя.
2. flag_manga = True
Если нужно просмотреть список манги, то в строке скрипта указать True, если смотреть не нужно, то указать False.
3. flag_anime = True
Если нужно просмотреть список аниме, то в строке скрипта указать True, если смотреть не нужно, то указать False.

Для манги просматриваются только ссылки на другую мангу, для аниме - только ссылки на другое аниме.
Поиск осуществляется на всю глубину связанных объектов (то есть, допустим в списке есть объект Anime1, у него есть связь с объектом Anime2, а у того - с Anime3, тогда в результат будут выведены и Anime2 и Anime3, как связанные с Anime1), поэтому чем больше список связанных ссылок, тем дольше скрипт будет отрабатывать.

Attached Files


  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users