2017-10-12 3 views
0

Ich habe nutch 1.13 zusammen mit solr-6.6.0 auf CentOS Linux Release 7.3.1611 integriert Ich hatte etwa 10 URLs in seedlist gegeben, die unter/usr/local/apache ist -nutch-1.13/URLs/seed.txt I folgte die tutorial Der Befehl I verwendetenwie URLs beim Crawling in Nutch Seed Liste injiziert werden

/usr/local/apache-nutch-1.13/bin/crawl -I -D solr.server.url = httpxxx: 8983/Solr/nutch//usr/local/apache-nutch-1.13/urls/ Crawl 100

  1. Es zu laufen scheint eine oder zwei Stunden. und ich bekomme entsprechende Ergebnisse in solr. Während der Crawling-Phase scheinen jedoch viele URLs im Terminal-Bildschirm abgerufen und geparst zu sein. Warum werden sie nicht zur Basisliste hinzugefügt?

2.Wie wissen Sie, ob meine crawldb wächst? Es war ungefähr einen Monat und die einzigen Ergebnisse, die ich auf solr erhalte, sind von der Basisliste und seinen Links.

3.Ich habe den obigen Befehl in den geplanten Aufgaben crontab -e und plesk gesetzt. Jetzt bekomme ich dieselben Links mehrmals im Gegenzug für die Suchanfrage. Wie vermeidet man doppelte Ergebnisse in solr?

Ich bin ein Neuling und alle zusätzlichen Informationen wären hilfreich.

Antwort

0

1. Es scheint für eine oder zwei Stunden zu laufen. und ich bekomme entsprechende Ergebnisse in solr. Während der Crawling-Phase scheinen jedoch viele URLs im Terminal-Bildschirm abgerufen und geparst zu sein. Warum werden sie nicht zur Basisliste hinzugefügt?

Die Seed-Datei wird nie durch nutch geändert, sie dient nur als Lese-Zweck für die Injektionsphase.

2.Wie wissen Sie, ob meine crawldb wächst?

Sie sollen bei der Option -stats readdb einen Blick darauf werfen, wo man so etwas wie diese

crawl.CrawlDbReader - Statistics for CrawlDb: test/crawldb 
crawl.CrawlDbReader - TOTAL urls: 5584 
crawl.CrawlDbReader - shortest fetch interval: 30 days, 00:00:00 
crawl.CrawlDbReader - avg fetch interval: 30 days, 01:14:16 
crawl.CrawlDbReader - longest fetch interval:  42 days, 00:00:00 
crawl.CrawlDbReader - earliest fetch time:  Tue Nov 07 09:50:00 CET 2017 
crawl.CrawlDbReader - avg of fetch times: Tue Nov 14 11:26:00 CET 2017 
crawl.CrawlDbReader - latest fetch time: Tue Dec 19 09:45:00 CET 2017 
crawl.CrawlDbReader - retry 0: 5584 
crawl.CrawlDbReader - min score: 0.0 
crawl.CrawlDbReader - avg score: 5.463825E-4 
crawl.CrawlDbReader - max score: 1.013 
crawl.CrawlDbReader - status 1 (db_unfetched): 4278 
crawl.CrawlDbReader - status 2 (db_fetched):  1014 
crawl.CrawlDbReader - status 4 (db_redir_temp): 116 
crawl.CrawlDbReader - status 5 (db_redir_perm): 19 
crawl.CrawlDbReader - status 6 (db_notmodified): 24 

Einen guten Trick bekommen soll ich immer tun, um diesen Befehl innerhalb des Crawl-Skript von nutch bereitgestellt setzen (bin/crawl), innerhalb der Schleife

for for ((a=1; ; a++)) 
do 
... 
> echo "stats" 
> __bin_nutch readdb "$CRAWL_PATH"/crawldb -stats 
done 

Es geht um einen Monat gewesen, und die einzigen Ergebnisse i auf solr erhalten sind aus dem Samen und ihre Verbindung s.

Die Ursachen sind vielfältig, Sie sollten die Ausgabe jeder Phase überprüfen und sehen, wie der Trichter geht.

3. Ich habe oben Befehl in Crontab-e und Plesk geplanten Aufgaben festgelegt. Jetzt bekomme ich dieselben Links mehrmals im Gegenzug für die Suchanfrage. Wie vermeidet man doppelte Ergebnisse in solr?

Raten Sie haben nutch Standard-Solr-Schema verwendet, überprüfen Sie die URL-ID-Felder. Soweit ich gearbeitet habe, ID ist die eindeutige Kennung einer URL (die Inhalte weiterleiten kann)

Verwandte Themen