ビジネス ディレクトリhttp://directory.thesun.co.uk/find/uk/computer-repairからビジネスの詳細をスクラップする必要があるスクレイピーを使用してプロジェクトを作成してい
ます。私が直面している問題は次のとおりです。ページをクロールしようとすると、クローラーは最初のページのみの詳細を取得しますが、残りの 9 ページの詳細も取得する必要があります。それはすべて10ページです..私はSpiderコードとitems.pyとsettings.pyの下に表示しています私のコードを見て、それを解決するのを手伝ってください
クモのコード::
from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
from project2.items import Project2Item
class ProjectSpider(BaseSpider):
name = "project2spider"
allowed_domains = ["http://directory.thesun.co.uk/"]
start_urls = [
"http://directory.thesun.co.uk/find/uk/computer-repair"
]
def parse(self, response):
hxs = HtmlXPathSelector(response)
sites = hxs.select('//div[@class="abTbl "]')
items = []
for site in sites:
item = Project2Item()
item['Catogory'] = site.select('span[@class="icListBusType"]/text()').extract()
item['Bussiness_name'] = site.select('a/@title').extract()
item['Description'] = site.select('span[last()]/text()').extract()
item['Number'] = site.select('span[@class="searchInfoLabel"]/span/@id').extract()
item['Web_url'] = site.select('span[@class="searchInfoLabel"]/a/@href').extract()
item['adress_name'] = site.select('span[@class="searchInfoLabel"]/span/text()').extract()
item['Photo_name'] = site.select('img/@alt').extract()
item['Photo_path'] = site.select('img/@src').extract()
items.append(item)
return items
私のitems.pyコードは次のとおりです::
from scrapy.item import Item, Field
class Project2Item(Item):
Catogory = Field()
Bussiness_name = Field()
Description = Field()
Number = Field()
Web_url = Field()
adress_name = Field()
Photo_name = Field()
Photo_path = Field()
私のsettings.pyは:::です
BOT_NAME = 'project2'
SPIDER_MODULES = ['project2.spiders']
NEWSPIDER_MODULE = 'project2.spiders'
他のページからも詳細を抽出するのを手伝ってください...