Scrapy konusunda yeniyim ve bir kazıma alıştırması üzerinde çalışıyorum ve CrawlSpider'ı kullanıyorum. Scrapy çerçevesi güzel çalışıyor ve ilgili bağlantıları izlese de, CrawlSpider'ı ilk bağlantıyı (ana sayfa/açılış sayfası) taramak için yapamıyorum. Bunun yerine, kural tarafından belirlenen bağlantıları kazımak için doğrudan doğruya gider, ancak bağlantıların olduğu açılış sayfasını kazımaz. Bir CrawlSpider için ayrıştırma yönteminin üzerine yazılması önerilmez, çünkü bunu nasıl düzeltebilirim bilmiyorum. Follow = True/False 'i değiştirmek de iyi sonuç vermez. İşte kod snippet'idir: Bunu yapmanın çeşitli yolları vardırScrapy CrawlSpider ilk açılış sayfasını taramıyor
class DownloadSpider(CrawlSpider):
name = 'downloader'
allowed_domains = ['bnt-chemicals.de']
start_urls = [
"http://www.bnt-chemicals.de"
]
rules = (
Rule(SgmlLinkExtractor(aloow='prod'), callback='parse_item', follow=True),
)
fname = 1
def parse_item(self, response):
open(str(self.fname)+ '.txt', 'a').write(response.url)
open(str(self.fname)+ '.txt', 'a').write(','+ str(response.meta['depth']))
open(str(self.fname)+ '.txt', 'a').write('\n')
open(str(self.fname)+ '.txt', 'a').write(response.body)
open(str(self.fname)+ '.txt', 'a').write('\n')
self.fname = self.fname + 1
'allow' argümanı yanlış yazıyorsunuz – webKnjaZ