2017-02-11 47 views
-1

scrapy無視我settins.pyScrapy忽略settings.py

我scraper.py

import scrapy 
 

 

 

 
class BlogSpider(scrapy.Spider): 
 
    name = 'blogspider' 
 
    start_urls = ['https://www.doctolib.de/directory/a'] 
 

 
    def parse(self, response): 
 

 
     if not response.xpath('//title'): 
 
      yield Request(url=response.url, dont_filter=True) 
 

 
     if not response.xpath('//lead'): 
 
      yield Request(url=response.url, dont_filter=True) 
 

 
     for title in response.css('.seo-directory-doctor-link'): 
 
      yield {'title': title.css('a ::attr(href)').extract_first()} 
 

 
     next_page = response.css('li.seo-directory-page > a[rel=next] ::attr(href)').extract_first() 
 
     if next_page: 
 
      yield scrapy.Request(response.urljoin(next_page), callback=self.parse)

在同一文件夾中的腳本放置是一個settings.py以下內容

# Retry many times since proxies often fail 
 
RETRY_TIMES = 5 
 
# Retry on most error codes since proxies fail for different reasons 
 
RETRY_HTTP_CODES = [500, 503, 504, 400, 403, 404, 408] 
 

 
DOWNLOADER_MIDDLEWARES = { 
 
    'scrapy.downloadermiddlewares.retry.RetryMiddleware': 90, 
 
    # Fix path to this module 
 
    'botcrawler.randomproxy.RandomProxy': 600, 
 
    'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110, 
 
} 
 

 
PROXY_LIST = '/home/user/botcrawler/botcrawler/proxy/list.txt'

他爲什麼不加載這個文件?我做錯了什麼?

感謝

回答

0

settings.py文件應在蜘蛛文件夾的並行和你scraper.py應該是蜘蛛文件夾中。您可以覆蓋現有的settings.py文件。

+0

ohh好的位於Ubuntu的蜘蛛fodler在哪裏? – Joni

+0

運行scrapy start項目名稱。它將在相同的路徑中創建一個目錄。你會發現它的一切 –

0

從你最近的其他帖子來看,你似乎在努力開始scrapy項目。這將是閱讀Scrapy教程here

總之是個好主意,它將描述使用命令scrapy startproject Blogspider

這將建立3個連接的文件夾如何啓動scrapy項目:Blogspider >> Blogspider >>蜘蛛

在第二個文件夾將是items.pysettings.py文件和一些其他文件。你只需要編輯items.py文件。

蜘蛛文件夾是你放置蜘蛛的地方,它會讀取上一個文件夾中的items.pysettings.py文件等。