Skip to content

πŸš€πŸ“š PHP crawler for scraping data from MyAnimeList (MAL). Extracts information about anime, manga, characters and ratings for integration into anime wikis and other projects. Easy to use and customizable for different needs.

License

Notifications You must be signed in to change notification settings

Ani-mik/Animik-mal-crawler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

88 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Animik Unofficial Crawler MAL (My anime List Crawler)

**Animik mal-crawler ** β€” это ΠΏΠ°ΠΊΠ΅Ρ‚ для Laravel, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для парсинга Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ Π°Π½ΠΈΠΌΠ΅ для экосистСмы Animik.

Установка

Для установки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Composer:

composer require animik/mal-crawler

ПослС установки, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹:

php artisan vendor:publish --provider="Vahe\MalCrawler\MalCrawlerServiceProvider" --tag=config

Для запуска тСстов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

./vendor/bin/phpunit tests

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ фасада Anime

  1. crawlGenres()
  2. crawlExplicitGenres()
  3. crawlThemes()
  4. crawlDemographics()
  5. crawlGenreDescription(int $malId)
  6. crawlStudios()
  7. crawlStudioInformation(int $malId)
  8. crawlRankings()
  9. crawlSeasons()
  10. crawlAnimeRange()
  11. crawlTypes()
  12. crawlStatus()
  13. crawlRated()
  14. crawlColumns()

1. crawlGenres()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ ΠΆΠ°Π½Ρ€Ρ‹ Π°Π½ΠΈΠΌΠ΅. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ всС ΠΆΠ°Π½Ρ€Ρ‹ Π°Π½ΠΈΠΌΠ΅ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ внСшнСго источника.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


2. crawlExplicitGenres()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ явныС ΠΆΠ°Π½Ρ€Ρ‹ Π°Π½ΠΈΠΌΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° для взрослых). Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ для ΠΊΡ€Π°ΡƒΠ»ΠΈΠ½Π³Π° ΠΆΠ°Π½Ρ€ΠΎΠ² ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚ явныС ΠΆΠ°Π½Ρ€Ρ‹.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


3. crawlThemes()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ Ρ‚Π΅ΠΌΡ‹ Π°Π½ΠΈΠΌΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€ΠΎΠΌΠ°Π½Ρ‚ΠΈΠΊΠ°, ΠΏΡ€ΠΈΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ). Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ для ΠΊΡ€Π°ΡƒΠ»ΠΈΠ½Π³Π° ΠΆΠ°Π½Ρ€ΠΎΠ² ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚ ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ Ρ‚Π΅ΠΌΠ°ΠΌ.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


4. crawlDemographics()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ дСмографичСскиС Π³Ρ€ΡƒΠΏΠΏΡ‹ Π°Π½ΠΈΠΌΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, шонСн, сёнСн, сэйнСн ΠΈ Ρ‚.Π΄.). Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ для ΠΊΡ€Π°ΡƒΠ»ΠΈΠ½Π³Π° ΠΆΠ°Π½Ρ€ΠΎΠ² ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚ ΠΏΠΎ дСмографичСским Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌ.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


5. crawlGenreDescription(int $malId)

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ описаниС ΠΆΠ°Π½Ρ€Π° ΠΏΠΎ Π΅Π³ΠΎ malId. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ позволяСт ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ описаниС ΠΆΠ°Π½Ρ€Π°, явного ΠΆΠ°Π½Ρ€Π° ΠΈΠ»ΠΈ Ρ‚Π΅ΠΌΡ‹.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:

  • int $malId: malId ΠΆΠ°Π½Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


6. crawlStudios()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ студии Π°Π½ΠΈΠΌΠ΅. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ всС студии Π°Π½ΠΈΠΌΠ΅ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ внСшнСго источника.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


7. crawlStudioInformation(int $malId)

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ студии ΠΏΠΎ Π΅Ρ‘ malId. Π˜Π·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ студии ΠΏΠΎ Π΅Ρ‘ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:

  • int $malId: malId студии, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


8. crawlRankings()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ Π°Π½ΠΈΠΌΠ΅. Π˜Π·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ Π°Π½ΠΈΠΌΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ для опрСдСлСния популярности ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ΅-сСриалов ΠΈΠ»ΠΈ Ρ„ΠΈΠ»ΡŒΠΌΠΎΠ².

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


9. crawlSeasons()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ сСзоны Π°Π½ΠΈΠΌΠ΅. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ всС доступныС сСзоны Π°Π½ΠΈΠΌΠ΅ ΠΈ ΠΈΡ… характСристики, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π³ΠΎΠ΄Ρ‹ выпуска ΠΈ особСнности.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


10. crawlAnimeRange()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ID Π°Π½ΠΈΠΌΠ΅. Π˜Π·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ доступных ID Π°Π½ΠΈΠΌΠ΅ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ выполнСния массовых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


11. crawlTypes()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ Ρ‚ΠΈΠΏΡ‹ Π°Π½ΠΈΠΌΠ΅, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ сСриал, Ρ„ΠΈΠ»ΡŒΠΌ, OVA, ONA ΠΈ Ρ‚.Π΄. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΏΠΎ Ρ‚ΠΈΠΏΡƒ Π°Π½ΠΈΠΌΠ΅.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


12. crawlStatus()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ статусы Π°Π½ΠΈΠΌΠ΅, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π·Π°Π²Π΅Ρ€ΡˆΡ‘Π½Π½ΠΎΠ΅, выходящСС ΠΈ Ρ‚.Π΄. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ΅ ΠΏΠΎ статусу выпуска.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


13. crawlRated()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ возрастныС Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ Π°Π½ΠΈΠΌΠ΅, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ G, PG, PG-13, R ΠΈ Ρ‚.Π΄. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΏΠΎ возрастным Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³Π°ΠΌ для ограничСния ΠΈΠ»ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ Π°Π½ΠΈΠΌΠ΅ Π² зависимости ΠΎΡ‚ возраста зритСля.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


14. crawlColumns()

ОписаниС:
ΠšΡ€Π°ΡƒΠ»ΠΈΡ‚ столбцы Π°Π½ΠΈΠΌΠ΅, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°Ρ… поиска ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ…. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°ΠΊ Π½Π°Π·Π²Π°Π½ΠΈΠ΅, Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³, ΡΡ‚ΡƒΠ΄ΠΈΡŽ, Π³ΠΎΠ΄ выпуска ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅.

Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния: JsonResponse


About

πŸš€πŸ“š PHP crawler for scraping data from MyAnimeList (MAL). Extracts information about anime, manga, characters and ratings for integration into anime wikis and other projects. Easy to use and customizable for different needs.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project