Я установил Scrapy в свой Проект Пичарм. Затем, используя терминал в PyCharm, создал папку с помощью Scrapy startproject AnimalNames. Я зашел в эту папку и создал паука, используя Scrapy genspider Animals https://a-z-animals.com/animals/
Затем я добавил код в Animals.py , предназначенный для получения названий животных с сайта:
Код: Выделить всё
import scrapy
class AnimalsSpider(scrapy.Spider):
name = "animals"
allowed_domains = ["a-z-animals.com"]
start_urls = ["https://a-z-animals.com/animals/"]
def parse(self, response):
for container in response.css('div.container'):
yield {
container.css('a::text').get()
}
Код: Выделить всё
(self, response)
Сигнатура метода AnimalsSpider.parse() не соответствует сигнатуре базового метода в классе Spider
Когда я запускаю паука с помощью ползающих животных -O name_of_animals.json, он просто дает мне пустой файл JSON.
Как исправить это значит, что я получаю json-файл со всеми именами животных на сайте?
Обратите внимание, что мне пришлось изменить USER_AGENT и DOWNLOAD_DELAY в settings.py, поэтому веб-страница не не блокируй меня.
Подробнее здесь: https://stackoverflow.com/questions/792 ... e-base-met