def parse(self, response): productos = response.css('div.product-tile-inner') for producto in productos: print(producto) # Validacion detalles = producto.css('div.detail') tiene_detalles = len(detalles) > 0 if (tiene_detalles): # Instancia para cargar las propiedades del Item producto_loader = ItemLoader( item=ProductoFybeca(), # Clase item selector=producto # Selector por defecto ) producto_loader.default_output_processor = TakeFirst( ) # No guardar el arreglo producto_loader.add_css( 'titulo', # Nombre propiedad del item 'a.name::text' # Css para obtener el dato ) # Capsula X 10 mg producto_loader.add_xpath( 'imagen', # Nombre propiedad del item 'div[contains(@class,"detail")]/a[contains(@class,"image")]/img[contains(@id,"gImg")]/@src' # Xpath para obtener el dato ) # ../../images/thumbnail/294930.jpg yield producto_loader.load_item()
def parse(self, response): productos = response.css('div.product-tile-inner') for producto in productos: detalles = producto.css('div.detail') tiene_detalles = len(detalles) > 0 if tiene_detalles: #Instancia para cargar las propiedades del Item producto_loader = ItemLoader( item=ProductoFybeca(), #Clas Item selector=producto #Selector por defecto ) producto_loader.default_output_processor = TakeFirst() producto_loader.add_css( 'titulo', #Nombre de la propiedad del item 'a.name::text' #CSS para obtener el dato ) producto_loader.add_xpath( 'imagen', 'div[contains(@class,"detail")]/a[contains(@class,"image")]/img[contains(@id,"gImg")]/@src' ) yield producto_loader.load_item()
def parse(self, response): productos = response.css('div.product-tile-inner') for producto in productos: print(producto) detalles = producto.css('div.detail') tiene_detalles = len (detalles)> 0 if(tiene_detalles): producto_loader = ItemLoader(#Instancia para cargar las propiedades del item item = ProductoFybeca(),#clase item selector = producto #selector por defecto ) producto_loader.default_output_processor = TakeFirst()#para no guardar el arreglo producto_loader.add_css( 'titulo', #nombre de propiedad del item 'a.name::text' #css para obtener el dato )#capsula X 10 mg producto_loader.add_xpath( 'imagen', 'div[contains(@class,"detail")]/a[contains(@class,"image")]/img[contains(@id,"gImg")]/@src' ) yield producto_loader.load_item()
def parse(self, response): productos = response.css('div.product-tile-inner') for producto in productos: detalles = producto.css('div.detail') tiene_detalles = len(detalles) > 0 if (tiene_detalles): # valida si existe el detalle del producto producto_loder = ItemLoader( # instancia que carga propiedades del item item=ProductoFybeca(), # clase item selector=producto # selector por defecto ) producto_loder.default_output_processor = TakeFirst( ) # no guarda como arreglo producto_loder.add_css( 'titulo', # nombre de la propiedad del item 'a.name::text' # css que contiene el dato que se le quiere dar al nombre de la propiedad del item ) producto_loder.add_xpath( 'imagen', 'div[contains(@class,"detail")]/a[contains(@class,"image")]/img[contains(@id,"gImg")]/@src' # xpath que contiene el dato ) yield producto_loder.load_item()