У меня проблема с пауком, структура сайта выглядит следующим образом:
<div id="results">
<table class="table_answers">
<table>
<tr>
<td class="listing">
</td>
<td class="listing">
</td>
</tr>
</table>
</table>
<table class="table_answers">
<table>
<tr>
<td class="listing">
</td>
<td class="listing">
</td>
</tr>
</table>
</table>
Только таблицы с именами, которые я написал, имеют любой класс или идентификатор. Я хочу извлечь текст из каждого td с классом «перечисление» отдельно, и я использую этот код:
def parse(self, response):
item_id = response.css('.listing::text').extract()
row_data = zip(item_id)
for item in row_data:
scraped_info = {
# 'page': response.url,
'item_id': item[0],
}
yield scraped_info
Этот код дает результат, где первая строка из первого списка первой таблицы и второй строка является вторым списком второй таблицы. Я попытался изменить его на: item_id = response.css('.listing::text')[0].extract()
, надеясь, что он извлечет только первую строку с классом «перечисление», но вместо этого он дает только первой таблице первое значение td по одной букве в строке. Спасибо за вашу помощь.