Очистка данных таблицы с использованием Scrapy (python) - PullRequest
0 голосов
/ 29 октября 2018

Я работаю над проектом, который включает в себя очистку данных с веб-сайта с использованием Scrapy. Раньше мы использовали Selenium, но теперь мы должны использовать Scrapy. У меня нет никаких знаний о Scrapy, но я изучаю это прямо сейчас. Одна из проблем заключается в удалении данных с веб-сайта, данные структурированы в виде таблиц, и, хотя есть ссылки для загрузки таких данных, в моем случае это не работает.

Ниже приведена структура таблиц Структура HTML

Все мои данные находятся под tbody, и у каждого есть tr

Псевдокод, который я написал до сих пор:

def parse_products(self, response):
    rows=response.xpath('//*[@id="records_table"]/tbody/')
    for i in rows:
      item = table_item()
      item['company'] = i.xpath('td[1]//text()').extract_first()
      item['naic'] = i.xpath('td[2]//text()').extract_first()
      yield item

Правильно ли я получаю доступ к телу таблицы с помощью xpath? Не уверен, что указанный xpath правильный или нет

1 Ответ

0 голосов
/ 31 октября 2018

Лучше сказать:

def parse_products(self, response):
    for row in response.css('table#records_table tr'):
      item = table_item()
      item['company'] = row.xpath('.//td[1]/text()').get()
      item['naic'] = row.xpath('.//td[2]/text()').get()
      yield item

Здесь вы будете выполнять итерацию по строкам таблицы, а затем получать данные из ячеек.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...