我想将两个具有不同父母的选择器链接在一起。我目前正在使用的选择器:
..css('td:nth-child(8) > span.cap.mtv > ::text')
哪个收益率:
<Selector xpath="descendant-or-self::td[count(preceding-sibling::*) = 7]/span[@class and contains(concat(' ', normalize-space(@class), ' '), ' cap ') and (@class and contains(concat(' ', normalize-space(@class), ' '), ' mtv '))]/*/text()" data='$725,000'>
我遇到的问题是我还想要以下内容:
..xpath('td[8]/div/text()')
哪个收益率:
<Selector xpath='td[8]/div/text()' data='UFA'>
最终我想使用项目加载器和提取来获取:
$725,000
UFA
...
我希望实现与以下类似的东西..
...xpath('td[8]').css('span.cap.mtv > ::text').xpath('/div/text()')
如果程序先前没有找到任何东西,但我更倾向于使用这种“或/或”灵活性,我之前只是用一组选择器重新擦除了一个元素。或者我会更好地一起看另一个选择器吗?
非常感谢任何帮助!
答案 0 :(得分:1)
如果您正在使用项目加载器,则可以为单个字段添加多个选择器,如 scrapy docs所示。
在创建加载器后,这样的东西应该可以工作:
group_id: A
medicore_id: B0019V1
date_of_visit_sample_drawn_date: 2009-09-14
rin: 8.5
donor_id: 19
sle_visit_designation: Baseline
bold_shipment_batch: 1
rna_concentrated: No
subject_type: Patient
您的输入/输出处理器将负责这些信息的组合方式。