Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This implements 6 new API endpoints and refactors how the news parser works.
Feature Tracker: #491
To do
getPinnedArticles
Description: Retrieves the pinned featured article listing
URL: https://myanimelist.net/featured
API Request:
REST API Remarks: Cache this. It's just 4 entries.
getRecentArticles
Description: Retrieves the latest featured article listing
URL: https://myanimelist.net/featured?p=1
API Request:
REST API Remarks: It would probably be best to use this method to loop through each ID, fetch their details via
getArticles
and index/populate them directly into MongoDB/TypeSense. This would allow us to provide a better search experience.getArticlesByTag
Description: Retrieves article listing by tag
URL: https://myanimelist.net/featured/tag/interview
API Request:
REST API Remarks: Won't need this scraper API call on the REST API because we'll have custom search.
getArticleSearch
Description: Retrieves article listing by query
URL: https://myanimelist.net/featured/search?q=test&p=1
API Request:
REST API Remarks: Won't need this scraper API call on the REST API because we'll have custom search.
getArticleTags
Description: Retrieves all article tags
URL: https://myanimelist.net/featured/tag
API Request:
REST API Remarks: Periodic sync and overwrite like we have for Anime and Manga Genres. There are many entries so we could paginate, provide basic name search (use case: auto completion).
getArticle
Description: Retrieves article resource
URL: https://myanimelist.net/featured/1
API Request:
REST API Remarks: We'll use a periodic sync strategy with getRecentNews to get all new entries in one go and keep them updated as there may be a chance of articles being edited later on. Perhaps biweekly or once a month?