Как получить srcset из тега img с помощью scrapy python - PullRequest
0 голосов
/ 04 мая 2020

Итак, я извлекаю некоторую информацию со страниц продукта и хочу получить ссылку на img из тега img, но у него есть srcset с несколькими ссылками, и я не знаю, как получить данные с помощью scrapy:

HTML:

<img width="768" height="1152" alt="Top com brilho - Preto - SENHORA | H&amp;M PT" class="Top com brilho - Preto - SENHORA | H&amp;M PT" srcset="//lp2.hm.com/hmgoepprod?set=quality[79],source[/e4/e9/e4e96ab4841af66083ba521c17c1c18a8e300426.jpg],origin[dam],category[ladies_tops_vests],type[DESCRIPTIVESTILLLIFE],res[y],hmver[1]&amp;call=url[file:/product/main] 396w,
		//lp2.hm.com/hmgoepprod?set=quality[79],source[/e4/e9/e4e96ab4841af66083ba521c17c1c18a8e300426.jpg],origin[dam],category[ladies_tops_vests],type[DESCRIPTIVESTILLLIFE],res[w],hmver[1]&amp;call=url[file:/product/main] 564w, 
        //lp2.hm.com/hmgoepprod?set=quality[79],source[/e4/e9/e4e96ab4841af66083ba521c17c1c18a8e300426.jpg],origin[dam],category[ladies_tops_vests],type[DESCRIPTIVESTILLLIFE],res[s],hmver[1]&amp;call=url[file:/product/main] 657w, 
        //lp2.hm.com/hmgoepprod?set=quality[79],source[/e4/e9/e4e96ab4841af66083ba521c17c1c18a8e300426.jpg],origin[dam],category[ladies_tops_vests],type[DESCRIPTIVESTILLLIFE],res[m],hmver[1]&amp;call=url[file:/product/main] 820w" sizes="(max-width: 767px) 100vw, 50vw" src="//lp2.hm.com/hmgoepprod?set=quality[79],source[/e4/e9/e4e96ab4841af66083ba521c17c1c18a8e300426.jpg],origin[dam],category[ladies_tops_vests],type[DESCRIPTIVESTILLLIFE],res[m],hmver[1]&amp;call=url[file:/product/main]">

Есть ли способ получить все ссылки или создать список со всеми ссылками?

Ответы [ 2 ]

1 голос
/ 04 мая 2020

Проверьте и посмотрите, использует ли веб-сайт JSON или Javascript, что повлияет на обработку данных с помощью scrapy. Нажмите проверить элементы на веб-сайте и попробуйте и посмотреть, выбирает ли он все ссылки на изображения

//div[@class = 'product-detail-main-image-container']/img/@src
0 голосов
/ 04 мая 2020

Мне удалось заставить его работать со следующим кодом:

self.img = response.xpath('/html/body/main/div[2]/div[2]/div[1]/figure[1]/div/img/@srcset').get()
        self.img = self.img.split('\r')[0][2:]
        self.img, x = self.img.split(' ')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...