Я работаю над своим первым проектом Scrapy и начинаю с довольно простого веб-сайта stockx.
Я хотел бы разобрать различные категории предметов. Если я использую приведенные ниже URL в качестве моих start_urls. Как мне разобрать каждый начальный URL?
https://stockx.com/sneakers', https://stockx.com/streetwear', https://stockx.com/collectibles', https://stockx.com/handbags', https://stockx.com/watches
Страница продукта обычно имеет следующую структуру:
https://stockx.com/air-max-90-patta-homegrown-grass
Я пытаюсь прочитать документацию по этой теме, но не могу точно следовать ей.
Я знаю, что нижеприведенное неверно, потому что я заставляю список URL-адресов результатов,просто не уверен, как должны обрабатываться несколько start_urls в первом разборе.
def parse(self, response):
#obtain number of pages per product category
text = list(map(lambda x: x.split('='),
response.xpath('//a[@class="PagingButton__PaginationButton-sc-1o2t560-
0 eZnUxt"]/@href').extract()))
total_pages = int(text[-1][-1])
#compile a list of URLs for each result page
cat =['sneakers','streetwear','collectibles','handbags','watches']
cat = ['https://stockx.com/{}'.format(x) for x in cat]
lst=[]
for x in cat:
for y in range (1,total_pages+1):
result_urls=lst.append(x+'?page={}'.format(y))
for url in result_urls[7:9]:
# print('Lets try: ', url)
yield Request(url=url, callback=self.parse_results)