私はScrapyを初めて使用しています。私はスクレイピング練習に取り組んでおり、CrawlSpiderを使用しています。 Scrapyフレームワークは美しく機能し、関連リンクをたどっていますが、CrawlSpiderが最初のリンク(ホームページ/リンク先ページ)を削ってしまうようなことはありません。代わりに、それはルールによって決定されたリンクを掻き取るために直接行くが、リンクがあるランディングページを掻き取ることはない。 CrawlSpiderの解析メソッドを上書きすることは推奨されていないため、これを修正する方法はわかりません。 follow = True/Falseを変更しても良い結果は得られません。ここでは、コードの抜粋です。これを行うには、いくつかの方法がありますScrapy CrawlSpiderは最初のランディングページをクロールしません
は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'引数のスペルを間違えています – webKnjaZ