我想要獲取使用Scrapy的各種文章的HTML。這些文章還包括我想分開處理的圖像。如何使用XPath從HTML Scrapy中過濾圖像?
如果我有一篇文章,其HTML看起來像這樣:
<div class="article>
<p>This is a sentence.</p>
<p>This is a sentence.</p>
<img src="/path/to/image.jpg"/>
<p>This is a sentence.</p>
<p>This is a sentence.</p>
</div>
我怎樣才能湊只是非圖像HTML,或這樣的:
<div class="article>
<p>This is a sentence.</p>
<p>This is a sentence.</p>
<p>This is a sentence.</p>
<p>This is a sentence.</p>
</div>
我已經試過目前:
article = response.xpath("//div[@class='article'][not(img)]").extract()
...但這仍然包括圖像。
明白了 - 這就是爲什麼其他響應('/ div [@ class ='article']/* [not(self :: img)]')返回_nothing_ ......因爲文章I試圖選擇有圖像,那隻會選擇沒有圖像的文章? – YPCrumble
您在評論中提到的XPath會選擇所有文章'div'元素的所有非圖像子元素。如果它沒有選擇任何東西,並且讓你感到意外,我不得不看HTML來說更多。 – kjhughes