首页 > 解决方案 > 如何提取zomato上的链接?

问题描述

试图从 start_url 下方仅查找餐厅页面链接(例如https://www.zomato.com/istanbul/m%C3%BCkellef-karak%C3%B6y-istanbul),但我得到的不仅是餐厅页面链接,所有的链接。

import scrapy

class ZomatoSpider(scrapy.Spider):
    name = 'zomato'
    allowed_domains = ["zomato.com"]
    start_urls = ['https://www.zomato.com/tr/istanbul/restoranlar?page=1']

    def parse(self, response):
        all_css = response.css('.col-s-12')
        all_product = all_css.css('a::attr(href)').extract()
        print(all_product)
        yield

标签: pythoncssscrapyweb-crawlerhref

解决方案


请阅读scrapy文档。它有一个用于学习目的的教程项目。为了回答您的问题,这将为您提供所有餐厅链接。

all_product = response.css('#orig-search-list .result-title::attr(href)').extract()

yield{
    'all_product': all_product
}

推荐阅读