Как получить путь к файлу после загрузки с помощью File Pipeline в Scrapy? - PullRequest
0 голосов
/ 06 октября 2019

Я загружаю файл, используя FilePipeline в Scrapy. Он успешно загружен с сообщением ниже.

{'file_urls': [u'https://avt.mkklcdnv3.com/avatar_225/3635-a_world_that_i_rule.jpg'], 
'files': 
   [{
            'checksum': '6eae71709357f85fba123165c6e64256',
             'path': 'full/7d821d27c3b718d9a24b36e8ab1ae0c0c2607eb8.jpg',
             'url': 'https://avt.mkklcdnv3.com/avatar_225/3635-a_world_that_i_rule.jpg'
   }]

}

Я хочу получить «путь» в «файлах» для сохранения в моей базе данных. Спасибо

Ответы [ 2 ]

0 голосов
/ 16 октября 2019

Выходной путь - это то, что вы определяете в параметре FILES_STORE .

0 голосов
/ 06 октября 2019

Сохраненный файл имеет значение path, в вашем примере 'full/7d821d27c3b718d9a24b36e8ab1ae0c0c2607eb8.jpg'

Если вы хотите получить полный (абсолютный) путь, вам нужно использовать либо модуль os, либо pathlib:

saved_file_path = files[0]['path']  # 'full/7d821d27c3b718d9a24b36e8ab1ae0c0c2607eb8.jpg'

import os
full_path = os.path.abspath(saved_file_path)

from pathlib import Path
full_path = Path(saved_file_path).absolute()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...