На учебном сайте Scrapy у них есть этот код для элемента.Python и Scrapy, ссылающиеся на атрибуты предмета
import scrapy
class DmozItem(scrapy.Item):
title = scrapy.Field()
link = scrapy.Field()
desc = scrapy.Field()
тогда у них есть этот код для паука.
import scrapy
from tutorial.items import DmozItem
class DmozSpider(scrapy.Spider):
name = "dmoz"
allowed_domains = ["dmoz.org"]
start_urls = [
"http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",
"http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
]
def parse(self, response):
for sel in response.xpath('//ul/li'):
item = DmozItem()
item['title'] = sel.xpath('a/text()').extract()
item['link'] = sel.xpath('a/@href').extract()
item['desc'] = sel.xpath('text()').extract()
yield item
Мой вопрос: почему они могут ссылаться на заголовок элемента с помощью скобок []? Я думал, когда вы ссылаетесь на переменную, это будет item.title = whatever. Есть что-то, что мне не хватает?