Во-первых, я думал, что переменные класса были доступны для всех объектов в классе.Во-вторых, я думал, что переменная, определенная на том же уровне (отступ блока), что и функция def, находится в пределах объема функций, определенных там и во внутренних блоках.Для меня не имеет смысла, что скрапирование изменит это правило.Я просмотрел это перед публикацией, и я не вижу никакой разницы между тем, что я сделал, и тем, что здесь объясняется: https://www.programiz.com/python-programming/global-keyword. Примечание. Я не получаю UnboundLocalError, если это имеет значение.Я был бы очень признателен за объяснение того, что здесь происходит и как это исправить.
объявление класса / паука
...
start_urls = [example.com]
def parse(self, response):
for url in start_urls:
yield scrapy.Request(url, callback=self.parse_item)
File "/home/malikarumi/Projects/aishah/acquire/
acquire/spiders/local_etl_01.py", line 18, in parse
for url in start_urls:
NameError: name 'start_urls' is not defined
объявление класса / паука
...
start_urls = [example.com]
def parse(self, response):
global start_urls
for url in start_urls:
yield scrapy.Request(url, callback=self.parse_item)
`File
"/home/malikarumi/Projects/aishah/acquire/
acquire/spiders/local_etl_01.py", line 18, in parse
for url in start_urls:
NameError: name 'start_urls' is not defined`