2017-03-03 25 views
-1

我可以採用URL,然後履帶遵循每個URL的起始網址的下一頁鏈接及其工作LinkExtractor - 與條件提取

rules = (Rule(LinkExtractor(allow=(), restrict_xpaths=('//a[@class="pagnNext"]',)), callback="parse_start_url", follow= True),) 

但是你可以想像我開始在一些獲得驗證碼指向一些網址。我聽說可能有蜜罐對人類來說是不可見的,但是在設計的html代碼中,可以讓你點擊以識別你是一個bot。

我要讓提取提取鏈接有條件例如不提取,如果CSS樣式顯示點擊:不存在或類似的東西

是這是可行的

+0

不確定你在問什麼 – Umair

回答

0

我會做這樣的事情:

def parse_page1(self, response): 
    if (response.css("thing i want to check exists")) 
     return scrapy.Request(response.xpath('//a[@class="pagnNext"]'), 
          callback=self.parse_page2) 

def parse_page2(self, response): 
    # this would log http://www.example.com/some_page.html 
    self.logger.info("Visited %s", response.url) 

官方文檔: https://doc.scrapy.org/en/latest/topics/request-response.html

注:如您captc哈問題嘗試搞亂您的設置。至少要確保你的DOWNLOAD_DELAY設置爲0以外的東西。看看其他選項https://doc.scrapy.org/en/latest/topics/settings.html