Не удалось извлечь атрибут «src» из тега «img»
Home
Вопросы и ответы
Не удалось извлечь атрибут «src» из тега «img»
person
Nikhil
schedule
08.10.2019
source
источник
Ответы (2)
Проверьте, что в ответе. Похоже, он генерируется на стороне клиента.
Также вы не должны выбирать по классам, используя XPath, как это, по крайней мере, используйте contains()
для каждого класса (или более сложный https://stackoverflow.com/a/1604480/964478 ) или лучше использовать селекторы CSS (img._3togXc._3wp706
).
person
Alex P.
schedule
08.10.2019
Попробуй это
In [7]: response.xpath('//*[@class="In [11]: response.xpath('//*[@class="_2_AcLJ response.xpath('//*[@class="_2_AcLJ _3_yGjX"]/@style').re('background-image:url\((.*)\)')
yGjX"]/@style').re_first('background-image:url\((.*)\)')
Out[11]: 'https://rukminim1.flixcart.com/image/128/128/jy1v7gw0/t-shirt/7/q/h/m-mfk-6564-g-16-blue-mufti-original-imaf97tfrbhdnhhn.jpeg?q=70'
AcLJ response.xpath('//*[@class="_2_AcLJ _3_yGjX"]/@style').re('background-image:url\((.*)\)')
yGjX"]/@style').extract_first()
Out[7]: 'background-image:url(https://rukminim1.flixcart.com/image/128/128/jy1v7gw0/t-shirt/7/q/h/m-mfk-6564-g-16-blue-mufti-original-imaf97tfrbhdnhhn.jpeg?q=70)'
or
In [11]: response.xpath('//*[@class="_2_AcLJ response.xpath('//*[@class="_2_AcLJ _3_yGjX"]/@style').re('background-image:url\((.*)\)')
yGjX"]/@style').re_first('background-image:url\((.*)\)')
Out[11]: 'https://rukminim1.flixcart.com/image/128/128/jy1v7gw0/t-shirt/7/q/h/m-mfk-6564-g-16-blue-mufti-original-imaf97tfrbhdnhhn.jpeg?q=70'
окончательный
response.xpath('//*[@class="_2_AcLJ _3_yGjX"]/@style').re('background-image:url\((.*)\)')
заменить /image/128/128/
------ /image/800/960
person
Wertartem
schedule
09.10.2019