You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
633 B
19 lines
633 B
5 years ago
|
# -*- coding: utf-8 -*-
|
||
|
import scrapy
|
||
|
|
||
|
|
||
|
class QuotesSpider(scrapy.Spider):
|
||
|
name = 'quotes'
|
||
|
allowed_domains = ['quotes.toscrape.com']
|
||
|
start_urls = ['http://quotes.toscrape.com/js/']
|
||
|
|
||
|
def parse(self, response):
|
||
|
for quote in response.css('div.quote'):
|
||
|
yield {
|
||
|
'text': quote.css('span.text::text').extract_first(),
|
||
|
'author': quote.css('small.author::text').extract_first(),
|
||
|
'tags': quote.css('div.tags > a.tag::text').extract()
|
||
|
}
|
||
|
with open('quotes.js.enable.html', 'w', encoding='utf-8') as f:
|
||
|
f.write(response.text)
|