Я хочу извлечь список имен документов ['document 1', 'document 2', 'document x']
из некоторых html:
<div class = "pdf_download">
<a href="https://example.com/document1.pdf">
<img alt="Download PDF" src="download.jpg">
Document 1
</a>
</div>
<div class = "pdf_download">
<a href="https://example.com/document2.pdf">
<img alt="Download PDF" src="download.jpg">
Document 2
</a>
</div>
Когда я пытаюсь использовать оба селектора css и xpath, два тега создают список из четырех, предположительно из-за тегов <img>
, которые я не могу исключить:
response.xpath("//a[contains(@href, 'pdf')]/text()").extract()
# returns an empty list
# response.xpath("//a[contains(@href, 'pdf')]/*[not(self::img)]/text()").extract()
response.css(".pdf_download a:not(img)::text()").extract()
Вывод:
[\n\t\t\t\t\t\t\t\t\t\t,
\n\t\t\t\t\t\t\t\t\t\t,Document 1\n\t\t\t\t\t\t\t\t\t\t,
\n\t\t\t\t\t\t\t\t\t\t,
\n\t\t\t\t\t\t\t\t\t\t,Document 2\n\t\t\t\t\t\t\t\t\t\t]
Использование селекторов CSS или Xpath, есть ли способ извлечь список имен документов?