Идентификатор, поданный в SOLR, отличается от URL-адреса при обходе по перенаправленным URL-адресам - PullRequest
0 голосов
/ 05 февраля 2019

Я использую Nutch 1.13 и SOLR 5.5 большую часть времени, когда поле URL = поле ID, когда документы индекса Nutch в SOLR, но я видел случаи, когда идентификатор отличается от поля URL, и это происходит, когда URL1 перенаправляется на URL 2.и URL2 извлекается, есть два сценария

1-й сценарий (идентификатор не равен URL), метаданные https://www.givaudan.com/files/giv-2018-integrated-annual-report.pdf(repr) используются в качестве URL и https://www.givaudan.com/file/149296/download в качестве идентификатора в solr

https://www.givaudan.com/files/giv-2018-integrated-annual-report.pdf     
Version: 7
Status: 4 (db_redir_temp)
Fetch time: Thu Mar 07 07:18:53 UTC 2019
Modified time: Tue Feb 05 07:18:53 UTC 2019
Retries since fetch: 0
Retry interval: 2592000 seconds (30 days)
Score: 0.0013103343
Signature: 989b82c1e6e738b74f36d64534f95050
Metadata: 
_pst_=temp_moved(13), lastModified=0: 
https://www.givaudan.com/file/149296/download
_rs_=2508
Content-Type=text/html
nutch.protocol.code=302




https://www.givaudan.com/file/149296/download   Version: 7
Status: 2 (db_fetched)
Fetch time: Thu Mar 07 07:19:08 UTC 2019
Modified time: Tue Feb 05 07:19:08 UTC 2019
Retries since fetch: 0
Retry interval: 2592000 seconds (30 days)
Score: 0.0029494818
Signature: 7ecff30181eb4268cfb1dd0b79df7e8a
Metadata: 
_repr_=https://www.givaudan.com/files/giv-2018-integrated-annual-report.pdf
_pst_=success(1), lastModified=1549351146000
_rs_=14411
Content-Type=application/pdf
nutch.protocol.code=200

2-й сценарий (идентификатор совпадает с URL), метаданные repr отсутствуют

https://www.givaudan.com/files/giv-2017-annual-report.pdf   Version: 7
Status: 4 (db_redir_temp)
Fetch time: Thu Mar 07 07:18:14 UTC 2019
Modified time: Tue Feb 05 07:18:14 UTC 2019
Retries since fetch: 0
Retry interval: 2592000 seconds (30 days)
Score: 0.0012841906
Signature: e47ac79e3f75007a0c89490e7e2bbdbd
Metadata: 
_pst_=temp_moved(13), lastModified=0: 
https://www.givaudan.com/file/86431/download
_rs_=2537
Content-Type=text/html
nutch.protocol.code=302


https://www.givaudan.com/file/86431/download    Version: 7
Status: 2 (db_fetched)
Fetch time: Thu Mar 07 07:19:46 UTC 2019
Modified time: Tue Feb 05 07:19:46 UTC 2019
Retries since fetch: 0
Retry interval: 2592000 seconds (30 days)
Score: 5.633987E-4
Signature: 03a2542baa11916676f438c662e58b2e
Metadata: 
_pst_=success(1), lastModified=1549350016000
_rs_=5620
Content-Type=application/pdf
nutch.protocol.code=200

Что означает метаданный repr, индексируются только URL-адреса статуса db_fetched?В настоящее время я использую URL для поиска документа из SOLR, который отлично работает для большинства URL-адресов, но несколько крайних случаев, как указано выше, и я не получаю никакого результата для https://www.givaudan.com/file/149296/download, если я использую ID вместо URL для получения данныхот SOLR, это создаст какие-либо проблемы

1 Ответ

0 голосов
/ 06 февраля 2019

Nutch может спроектировать только индексировать документы под URL, который они были успешно получены (HTTP-статус 200).В вашем примере это URL, заканчивающиеся на .../download.Для переадресации есть некоторая эвристика , чтобы найти наиболее представительный URL, в первом примере https://www.givaudan.com/files/giv-2017-annual-report.pdf выбран как _repr_ URL более https://www.givaudan.com/file/149296/download (на мой взгляд, неплохой выбор).Однако эвристика не работает, если целевой URL перенаправления был найден ранее как обычная ссылка или был введен в качестве начального числа.

следует использовать идентификатор вместо URL для получения данных из SOLR

Да, потому что это не изменится.Но вы можете использовать поле «URL», которое будет отображаться в виде ссылки на странице результатов поиска.

...