BookLore
BookLore copied to clipboard
503 errors while fetching AMAZON endpoint
Not sure if it's about "rate limits" on amazon side, or anything else.
2025-05-15T21:38:42.340+02:00 INFO 1 --- [booklore-api] [nio-8080-exec-7] c.a.b.s.r.BookRecommendationService : Recommendations for book ID 24 are missing or empty. Computing similarity...
(...)
2025-05-15T21:38:42.599+02:00 ERROR 1 --- [booklore-api] [ Thread-4] c.a.b.s.m.parser.AmazonBookParser : Failed to get asin: org.jsoup.HttpStatusException: HTTP error fetching URL. Status=503, URL=[(...)]
java.lang.RuntimeException: org.jsoup.HttpStatusException: HTTP error fetching URL. Status=503, URL=[https://www.amazon.com/s/?search-alias=stripbooks&unfiltered=1&sort=relevanceexprank&(...)]
at com.adityachandel.booklore.service.metadata.parser.AmazonBookParser.fetchDocument(AmazonBookParser.java:473) ~[!/:0.0.1-SNAPSHOT]
at com.adityachandel.booklore.service.metadata.parser.AmazonBookParser.getAmazonBookIds(AmazonBookParser.java:67) ~[!/:0.0.1-SNAPSHOT]
at com.adityachandel.booklore.service.metadata.parser.AmazonBookParser.fetchMetadata(AmazonBookParser.java:43) ~[!/:0.0.1-SNAPSHOT]
at com.adityachandel.booklore.service.BookMetadataService.fetchMetadataListFromAProvider(BookMetadataService.java:89) ~[!/:0.0.1-SNAPSHOT]
at com.adityachandel.booklore.service.BookMetadataService.lambda$getProspectiveMetadataListForBookId$1(BookMetadataService.java:63) ~[!/:0.0.1-SNAPSHOT]
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(Unknown Source) ~[na:na]
at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]
Caused by: org.jsoup.HttpStatusException: HTTP error fetching URL. Status=503, URL=[https://www.amazon.com/s/?search-alias=stripbooks&unfiltered=1&sort=relevanceexprank&field-title=Contre%20l'avis%20des%20m%C3%A9decins&field-author=PATTERSON,%20James]
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:884) ~[jsoup-1.19.1.jar!/:1.19.1]
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:833) ~[jsoup-1.19.1.jar!/:1.19.1]
at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:350) ~[jsoup-1.19.1.jar!/:1.19.1]
at com.adityachandel.booklore.service.metadata.parser.AmazonBookParser.fetchDocument(AmazonBookParser.java:469) ~[!/:0.0.1-SNAPSHOT]
... 6 common frames omitted
Yes, Amazon enforces rate limits if you request book metadata too frequently. If you hit the limit, you’ll need to wait a few minutes before trying to fetch the book metadata again.