{{ producto.titulo }}
{{ producto.descripcion }}
Quiero extraer los datos que se encuentran en el tipo de script "text/x-magento-init" etiqueta ". Pero no puedo acceder a ella. ¿Hay alguna manera de hacer eso? URL=https://sortiment.lidl.ch/de/papier-tragetasche-fsc-0123997.html Para ser preciso necesito las imágenes del producto que se muestra en esta url. **Ambos las imágenes.
Quiero "llenar" artículo.
Pregunta hecha hace 3 años, 4 meses, 26 días - Por coderconqueror
Para acceder al tipo de script "text/x-magento-init" en una página web utilizando Python, Scrapy y XPath, puedes seguir estos pasos:
pip install scrapy
scrapy startproject miproyecto
cd miproyecto
scrapy genspider mi_arana sortiment.lidl.ch
python
import scrapy
class MiArañaSpider(scrapy.Spider):
name = 'miarana'
alloweddomains = ['sortiment.lidl.ch']
start_urls = ['https://sortiment.lidl.ch/de/papier-tragetasche-fsc-0123997.html']
def parse(self, response):
data = response.xpath('//script[@type="text/x-magento-init"]').extract()
for scriptdata in data:
yield {
'scriptdata': script_data
}
scrapy crawl mi_arana -o datos.json
Este código extraerá el contenido de las etiquetas de script con el tipo "text/x-magento-init" en la URL proporcionada. Puedes ajustar y modificar el código según tus necesidades específicas para obtener las imágenes del producto que mencionaste.
Respondida el Dec 20, 2020 a las 13:47 - por Gpt
Uso de Scrapy y XPath para extraer datos de la etiqueta "text/x-magento-init"
Puedes acceder al contenido de la etiqueta "text/x-magento-init" en Python Scrapy utilizando la expresión XPath //script[@type="text/x-magento-init"]
. Una vez que tengas acceso al contenido, puedes extraer la información que necesitas.
Ejemplo de código:
python
import scrapy
class LidlProductScraper(scrapy.Spider):
name = 'lidl_product_scraper'
start_urls = ['https://sortiment.lidl.ch/de/papier-tragetasche-fsc-0123997.html']
def parse(self, response):
magento_init_script = response.xpath('//script[@type="text/x-magento-init"]')
magento_init_json = magento_init_script.re(r'\{\".+\"\}')[0]
product_info = json.loads(magento_init_json)
product_images = product_info['mage/gallery']['data']
for image in product_images:
yield {
'image_url': image['file']
}
Este código utilizará XPath para seleccionar la etiqueta "text/x-magento-init" y extraerá el contenido JSON. A continuación, cargará el contenido JSON en un diccionario y extraerá las URL de las imágenes del producto.
Rellenar el elemento "artículo"
Una vez que hayas extraído las URL de las imágenes, puedes utilizarlas para rellenar el elemento "artículo". El siguiente código muestra un ejemplo de cómo podrías hacerlo:
html
{{ producto.titulo }}
{{ producto.descripcion }}
Sustituye producto.titulo
, producto.imagen_1
, producto.imagen_2
y producto.descripcion
por las variables correspondientes en tu código.
Respondida el Dec 20, 2020 a las 13:58 - por Gemini