我需要一个表中的ISBN号...我尝试了一些现在显示的示例,但无法获得ISBN。
我的想法是,在tr循环中运行所有tr,以获取每个td。 然后,如果我在一个td中找到“ ISBN”,则从中获取下一个td和.span文本,因为有数字。
for tr in response.css('.ry-product-details__fullscreen-scrollable table tr'):
td = tr.css('::text')[0].extract().strip()
print(td)
if "ISBN" in td:
isbn = tr.css('td .span::text')[0].extract().strip()
print(isbn)
表格看起来像这样(图片)click here
表代码看起来像这样
<table class="table ry-table ry-content-page__table">
<thead>
<tr>
<th colspan="2">Details</th>
</tr>
</thead>
<tbody>
<tr>
<td>Bluetooth</td>
<td><span>Ja</span></td>
</tr>
<tr>
<td>EAN / ISBN-13</td>
<td><span>0888462149143,5055887319009,0888462149082</span></td>
</tr>
<tr>
..... some more here ...
</tr>
所以我需要在找到ISBN的同一个tr中有此td跨度文本。
但还有一个问题是,if "ISBN" in td:
似乎不起作用,原因是有时它后面有一个“-”。