Как исправить ошибку 503 при использовании Jsoup для поиска данных из Amazon
Я хочу скачать картинки с книгами Амазонки, у меня есть база данных книг; Я хочу найти картину этих книг из Амазонки. Поэтому я использую Jsoup, чтобы найти ее; но когда я запускаю программу, произошла ошибка:
org.jsoup.HttpStatusException: HTTP error fetching URL. Status=503, URL=http://www.amazon.cn/s?ie=UTF8&page=1&rh=n%3A658390051%2Ck%3AA%20perfectly%20matched%20anisotropic%20absorber%20for%20use%20as%20an%20absorbing%20boundary%20condition
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:537)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:534)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:493)
at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:205)
at org.jsoup.helper.HttpConnection.get(HttpConnection.java:194)
at util.ExtractService.extract(ExtractService.java:75)
как это исправить? и есть ли другой способ исправить эту проблему? питон?
2 ответа
Я попытался поставить пользовательский агент, и он работал гладко.
Document document = Jsoup
.connect("https://www.amazon.com/")
.userAgent("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.38 Safari/537.36")
.get();
Надеюсь, это поможет!
Ошибка HTTP 503 подразумевает ошибку "служба недоступна".
Попробуйте проверить любые проблемы с подключением: 1. Ваше интернет-соединение. 2. Вам нужно использовать какие-либо настройки прокси? 3. У вас есть строгие настройки брандмауэра, которые могли бы прервать ваше соединение с Jsoup?
Все остальное под солнцем, которое может привести к разрыву соединения между вашей JVM и веб-сайтом.
Ошибка HTTP 503 означает "Служба недоступна". Могут быть общие причины, включая подключение к Интернету, соответствующий брандмауэр, настройки прокси с машины, занятость сервера и обслуживание сервера.
Несмотря на то, что это наиболее вероятные причины, может быть другой сценарий, когда сервер обнаружил, что ваш веб-парсинг выполняется с помощью Jsoup в качестве робота. Следовательно, сервер может предотвратить извлечение веб-страниц и просто подразумевает это как ошибку 503.