我有一个HTML页面像:-
<div>
<a href='link'>
<u class>name</u>
</a>
text
<br>
<a href='link'>
<u class>name</u>
</a>
text
<br>
<a href='link'>
<u class>name</u>
</a>
text
<br>
<a href='link'>
<u class>name</u>
</a>
text
<br>
<a href='link'>
<u class>name</u>
</a>
text
<br>
</div>
我需要选择这样的组:-
<a href='link'>
<u class>name</u>
</a>
text
<br>
我需要从一个组中选择3个值:- link、name和text。有没有什么方法可以选择这样一个组,并使用scrapy、CSS选择器、Xpath或其他方法从每个组中提取这些特定的值?
2条答案
按热度按时间vhmi4jdf1#
Scrapy提供了一种在html页面上使用
Items
- as items(定义键-值对的Python对象)来yield
多个值的机制。您可以单独提取,但将它们作为键-值对一起生成。
就像你可以这样定义你的解析函数:
打开items.py文件。
有关详细信息,请访问read this tutorial
e7arh2l62#
如果可以像这样在范围中绕排文本:
然后您可以选择CSS中的所有内容,如下所示:
a, a + span {}
或者,您可以分别设定这两个项目的型式:
a {}
个a + span {}
+
表示“紧接着”或“紧接着”