2017-04-23 4 views
2

In meiner Spinne ändern (von CrawlSpider erben), I chang die der Parameter "folgen" von Regel, aber die Ausgabe Links of LinkExtractor don‘change.like dies:wie kann ich die attr "nofollow" Link

rules = [ 
     Rule(CustomLinkExtractor(
      allow=[], 
      deny=[]), 
      follow=True, 
     ) 
    ] 

die CustomLinkExtractor ist meine Gewohnheit LinkExtractor

drucken Links:

[Link(url='www.example.com', text=u'', fragment='', nofollow=False)] 

jetzt habe ich die Regel zu ändern:

rules = [ 
      Rule(CustomLinkExtractor(
       allow=[], 
       deny=[]), 
      ) 
     ] 

drucken Links:

[Link(url='www.example.com', text=u'', fragment='', nofollow=False)] 

keine Veränderung !, so möchte ich wissen, wie der Parameter "nofollow" zu ändern, ich denke, um den Parameter "nofollow" entscheiden, ob der Link

Antwort

1

Sie folgen verwechseln den follow-Parameter von Rule mit dem 0xvon LinkExtractor.

Einige Websites verwenden rel=nofollow, um anzugeben, dass Webcrawler dieser URL nicht folgen sollten, und genau das zeigt Linkextractor in diesem Fall - ob der Linkknoten rel=nofollow hat. Es hat nichts mit dem Objekt Rule zu tun.

Siehe wikipedia's article on nofollow:

nofollow ein Wert ist, auf das rel-Attribut eines HTML ein Element zugeordnet werden können einige Suchmaschinen anweisen, dass der Hyperlink nicht das Ranking des Ziels Link in der Suche beeinflussen sollte Motorindex.

+0

Vielen Dank, dass mir eine Menge helfen – Zioyi

+0

@Zioyi kein Problem, es ist so eine verwirrende Benennung Zufall! – Granitosaurus

Verwandte Themen