#nutch #http-status-code-406
#nutch #http-status-code-406
Вопрос:
Я пытаюсь сканировать URL: https://www.randolphnj.org /
Но он показывает эту ошибку
2020-09-22 15:03:08,395 INFO httpclient.Http: http.accept = text/html,application/xhtml xml,application/xml;q=0.9,*/*;q=0.8
2020-09-22 15:03:08,395 INFO httpclient.Http: http.enable.cookie.header = true
2020-09-22 15:03:08,399 INFO conf.Configuration: found resource httpclient-auth.xml at file:/tmp/hadoop-unjar7802696204891280694/httpclient-auth.xml
Fetch failed with protocol status: exception(16), lastModified=0: Http code=406, url=https://www.randolphnj.org/
могу ли я узнать, в чем причина. пожалуйста, помогите мне решить.
Комментарии:
1. Ошибка не должна отображаться imo, поскольку принятый mime
text/html
отправляется сервером. С другой стороны, программное обеспечение сервера сильно устарело..2. могу ли я узнать причину, по которой он не принимает текст / html типа mime.
3. Конечно, если кто-нибудь узнает. Вы можете попробовать принять
*/*
это и посмотреть, работает ли это.
Ответ №1:
Скорее всего, сервер блокирует запросы, когда заголовок HTTP-запроса «User-agent» содержит строку «Nutch». Я смог воспроизвести поведение с помощью wget:
$> wget --header='User-Agent: mycrawler/Nutch-1.17' https://www.randolphnj.org/
--2020-09-25 10:55:42-- https://www.randolphnj.org/
Resolving www.randolphnj.org (www.randolphnj.org)... 63.247.128.112
Connecting to www.randolphnj.org (www.randolphnj.org)|63.247.128.112|:443... connected.
HTTP request sent, awaiting response... 406 Not Acceptable
2020-09-25 10:55:43 ERROR 406: Not Acceptable.
$> wget https://www.randolphnj.org/
--2020-09-25 11:02:25-- https://www.randolphnj.org/
Resolving www.randolphnj.org (www.randolphnj.org)... 63.247.128.112
Connecting to www.randolphnj.org (www.randolphnj.org)|63.247.128.112|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘index.html’
Комментарии:
1. да, я пытался воспроизвести ошибку, nutch объединяет имя агента как Nutch-1.17.
2. Как сохранить то же имя.