2017-04-23 236 views
2

在我的蜘蛛「nofollow」的(從CrawlSpider繼承),我昌參數「遵循」的規則,但LinkExtractor不要change.like的輸出鏈接如下:我怎樣才能改變ATTR鏈接

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

的CustomLinkExtractor是我的自定義LinkExtractor

打印鏈接:

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

現在我改變了規則:

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

打印鏈接:

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

沒有變化!所以我想知道如何更改參數「nofollow」的,我覺得參數「nofollow」的決定是按照鏈接

回答

1

你將Rule的follow參數與LinkExtractor的nofollow之一混淆。

有些網站使用rel=nofollow來表明網絡爬蟲不應該跟隨這個URL,這正是linkextractor在這種情況下顯示的 - 鏈接節點有rel=nofollow。它與Rule對象無關。

wikipedia's article on nofollow

nofollow的是,可以分配到一個HTML的版本屬性的元素指示一些搜索引擎的超級鏈接不應該影響到鏈接的目標的排名在搜索的值發動機的指數。

+0

謝謝,那幫了我很多 – Zioyi

+0

@Zioyi沒問題,這是一個令人困惑的命名巧合! – Granitosaurus