Closed slohj closed 5 years ago
I am adding this as pull request because I would like some feed back on the useragent string.
I used the repository name "Scudlee/anime-lists" but anything that identifies the "project" can be used. I have tested with 3 different strings and anything will work, but the useragent string must be set to something or anidb will refuse the connection.
I'll wait for a few days for comments before merging this myself.
HAMA ran into the same issue, it sounds like the useragent requirement was added due to AniDB getting flooded with requests, and the useragent string acting as a good identifier for what needed banning? I forget the exact details, because it was a few months ago.
Thanks for the link.
I got bit by it last week so I was just doing a slightly manual update since then by downloading the xml from my browser and letting an edited update.sh do the rest.
The only info I had found is this short anidb forum thread: https://anidb.net/perl-bin/animedb.pl?show=cmt&id=90537
After reading deridiot's comments I wonder if the string should be dynamic to indicate the actual end user and project such as "${USER}/Scudlee/anime-lists". I will post this question to anidb IRC and the forum.
AFAIK, AniDB clients all have a static useragent string (or one with a version number) - that way the mods/admins can initiate measures against the client as a whole, if a new version happens to, say, have a bug that causes it to send rapid-fire, DDoS-style requests to AniDB. If each user's client had it's own useragent string, in that scenario, they wouldn't be able to use a static client ban to in defense, which could be problematic.
Anidb recently changed policy on the animetitles.xml access and requires that the requesting project is announced in the useragent string.