Я хочу извлечь данные с помощью xpath с помощью scrapy. Это мой код:Двойной выбор из scrap scrap
def parse(self, response):
Coords = []
for sel in response.xpath('//*[@id="pitch"]/image[contains(@class,"success")]'):
item = PogbaItem()
item['x'] = sel.xpath('@x').extract()
item['y'] = sel.xpath('@y').extract()
item['x'] = sel.xpath('@x1').extract()
item['y'] = sel.xpath('@y1').extract()
Coords.append(item)
return Coords
Проблема заключается в том, что HTML содержит два различных элемента: первый (image
) с атрибутами x,y
, а другой (line
) с атрибутами x1,y1
. Я пытаюсь взять и собрать их вместе, чтобы иметь окончательный csv, но я не могу найти правильный xpath. Как я могу это решить?
Update: два примера HTML
:
<image class="pitch-object timer-1-40 success" x="331.172" y="84.678" width="30" height="30" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/sites/fourfourtwo.com/modules/custom/statzone/files/icons/successful_clearance.png"></image>
<line class="pitch-object timer-2-84 success" marker-end="url(#smallblue)" x1="453.076" y1="199.169" x2="509.104" y2="216.676" style="stroke:blue;stroke-width:3"></line>
Извините, я ошибся с элементами html. Я только что обновил свой ответ – slash89mf
@ slash89mf в порядке, см. Обновление. Помогает ли это? – alecxe
Это замечательно! Спасибо! – slash89mf