Ошибка атрибута: объект ‘list’ не имеет атрибута ‘date’ с помощью ItemAdapter

#python #scrapy

#python #scrapy

Вопрос:

Я не могу найти способ использовать дату адаптера списка.get(‘datemaj’)

Если я использую scrapedate с date (), у меня возникает эта ошибка: AttributeError: 'list' object has no attribute 'date' with ItemAdapter

Если я использую scrapedate без date (), у меня возникает эта ошибка: TypeError: '<' not supported between instances of 'list' and 'datetime.datetime'

     def process_item(self, item, spider):

        adapter = ItemAdapter(item)
        scrapedate = adapter.get('datemaj')

        if scrapedate.date() < datetime.now() - timedelta(minutes=10):
            print("Go")
            print("date de moins de 10 min alors envoyer")
            return item
        else:
            raise DropItem(f"trop vieux {item}")
 

Ошибка атрибута: объект ‘list’ не имеет атрибута ‘date’

Ответ №1:

scrapedate имеет тип list, поэтому вы не можете выполнить scrapedate.date() , распечатайте его, чтобы вы могли его увидеть.

Комментарии:

1. печать (scrapedate): [‘2021-01-06 07:59:06’] но я не знаю, как удалить его из списка.

2. scrapedate[0] для получения первого элемента