Scrapy + Python, возврат нескольких предметов, выпуск страницы для чтения - PullRequest
0 голосов
/ 18 марта 2020

Я пытаюсь извлечь несколько элементов в базу данных, используя Scrapy с python. Для создания своего кода я использовал оболочку Scrapy, чтобы сначала прочитать страницу и проверить строки кода, связанные с извлечением данных.

scrapy shell "http://www.goodmans.net/d/1706/brands.htm"

Я попробовал следующую функцию и получил желаемый результат (извлечение всех марок )

response.css('.SubDepartments a::text').extract()

The result was what I expected

Затем я собрал код, запустил его с scrapy crawl goodmans, и он выдал ошибку:

import scrapy
import pandas as pd
class GoodmanSpider(scrapy.Spider):
    name = "goodmans" 
    start_urls = ['http://www.goodmans.net/d/1706/brands.htm']

    def parse(self, response):
        category = response.css('.SubDepartments a::text').extract() 
        category_url = response.css('.SubDepartments a::attr(href)').extract()
        yield {'Category': category, 'url': categoy_url}

This was the error

1 Ответ

1 голос
/ 18 марта 2020

Интересная часть ошибки не видна на вашем скриншоте. В последней строке написано:

... line 10, in parse
       yield {'Category': category, 'url': categoy_url}
    NameError: name 'categoy_url' is not defined

Итак, простая орфография:)

...