2017-02-27 13 views
1

Ich benutze Apache Nutch 1.12 und die URLs, die ich zu crawlen versuche, ist so etwas wie https://www.mywebsite.com/abc-def/, das ist der einzige Eintrag in meiner seed.txt-Datei. Da will ich nicht jede Seite kriechen sein, habe ich nicht „abc-def“ in der URL hat so die folgende Zeile in regex-urlfilter.txt setzen:Nutch crawlt keine URLs außer der in seed.txt angegebenen

+^https://www.mywebsite.com/abc-def/(.+)*$ 

Wenn ich versuche zu laufen Befehl die folgenden Crawl:

**/bin/crawl -i -D solr.server.url=http://mysolr:3737/solr/coreName $NUTCH_HOME/urls/ $NUTCH_HOME/crawl 3** 

es crawlen und indexieren nur eine seed.txt uRL und in der 2. Iteration es einfach sagen:

Generator: starting at 2017-02-28 09:51:36 

Generator: Selecting best-scoring urls due for fetch. 

Generator: filtering: false 

Generator: normalizing: true 

Generator: topN: 50000 

Generator: 0 records selected for fetching, exiting ... 

Generate returned 1 (no new segments created) 

Escaping loop: no more URLs to fetch now 

Wenn ich die Regex-urlfilter.txt ändern, alles zu ermöglichen (+.) Es begann jede URL aufzu indizierenwas ich sicherlich nicht will.

Wenn jemand das gleiche Problem haben, teilen Sie bitte, wie Sie darüber hinauskommen.

Antwort

0

Kapiert zu arbeiten, nachdem mehrere Dinge in den letzten 2 days.Here versuchen, die Lösung ist:

Da die Website, die ich sehr schwer war kroch, das Eigentum in nutch-default.xml wurde auf 65536 Bytes Kürzen (Standard) .Die Links, die ich crawlen wollte, wurden leider nicht in den ausgewählten Teil aufgenommen und daher hat nutch nicht gecrawlt. Als ich es auf unlimited änderte, indem ich die folgenden Werte in nutch-site.xml setzte, begann es meine Seiten zu crawlen :

<property> 
    <name>http.content.limit</name> 
    <value>-1</value> 
    <description>The length limit for downloaded content using the http:// 
    protocol, in bytes. If this value is nonnegative (>=0), content longer 
    than it will be truncated; otherwise, no truncation at all. Do not 
    confuse this setting with the file.content.limit setting. 
    </description> 
</property> 
0

Sie können versuchen, Eigenschaften in conf/nutch-default.xml zu optimieren. Steuern Sie möglicherweise die Anzahl der gewünschten Outlinks oder ändern Sie die Abrufeigenschaften. Wenn Sie beschließen, eine Eigenschaft zu überschreiben, kopieren Sie diese Information in conf/nutch-site.xml und geben Sie dort einen neuen Wert ein.

+0

Könnten Sie bitte genauer sein, welche Eigenschaft sollte ich zwicken, um diese Arbeit zu machen. Ich habe schon einige ausprobiert, indem ich sie in nutch-site.xml kopiert habe, aber es hat nicht funktioniert. – Torukmakto

+0

also im Grunde wollen Sie keine externen Link auf https://www.mywebsite.com/abc-def/crawlen, oder? Wenn ja, versuchen Sie es mit dem Wert ' db.ignore.external.links 'als' wahr '? Lass es mich wissen und ich kann die Antwort entsprechend bearbeiten. –

+0

Nein, ich wollte interne Links, die den Pfad von mywebsite.com/abc-def/ haben. Wie auch immer, ich denke, ich habe die Lösung des Problems. Danke für die Hilfe. – Torukmakto

Verwandte Themen