Привет всем, я новичок в парсинге веб-сайтов, и в настоящее время я работаю над парсингом Amazon по цене чего-то, в данном случае это просто пример (эко точка 3, потому что это первый продукт, который я нашел) .
Я не понимаю, как хранить данные, поскольку, как и раньше, я запускал код только с терминала с помощью команды scrapy scrapy crawl Amazon -o amazon.json
. Это запускает краулер «Amazon» и сохраняет вывод в json файле «amazon. json». На самом деле я не хочу хранить данные в файле, как эта мысль. Я хочу запускать краулер, когда я запускаю фактический файл python. Придется ли мне создать экземпляр паука Amazon? Или, может быть, как-нибудь запустить команду терминала с помощью os.system?
В любом случае вот код:
class AmazonSpider(scrapy.Spider):
name = "Amazon"
start_urls = [
'https://www.amazon.de/Echo-Dot-3-Gen-Intelligenter-Lautsprecher-mit-Alexa-Sandstein-Stoff/dp/B07PDHSPXT/ref=sr_1_1?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=3TC0DPYYXLIJW&dchild=1&keywords=echo+dot&qid=1594659298&sprefix=echo%2Caps%2C176&sr=8-1'
]
def parse(self, response):
for price in response.xpath("//td[@class='a-span12']"): #the element in which the price resides
yield {
'price_text': price.xpath("//span[@id='priceblock_ourprice']/text()").get()
#the element of the price tag
}
#Thank you all in advance!!!