Как импортировать json-файл с сервера и обработать данные в DRF (python)?
Есть файл books.json. Необходимо сделать следующее:
- Данный файл должен запрашиваться по сети.
- Изображения должны сохраняться в проекте.
- При повторном парсинге не должно возникать дубликатов.
- Если нет категории - добавлять в "Новинки".
- Файл содержит намеренные ошибки в данных.
Пример данных:
{
"title": "Unlocking Android",
"isbn": "1933988673",
"pageCount": 416,
"publishedDate": { "$date": "2009-04-01T00:00:00.000-0700" },
"thumbnailUrl": "https://s3.amazonaws.com/AKIAJC5RLADLUMVRPFDQ.book-thumb-images/ableson.jpg",
"shortDescription": "Unlocking Android: A Developer's Guide provides concise, hands-on instruction for the Android operating system and development tools.",
"longDescription": "Android is an open source mobile phone platform based on the Linux operating system and developed by the Open Handset Alliance, a consortium of over 30 hardware, software and telecom companies that focus on open standards for mobile devices.",
"status": "PUBLISH",
"authors": ["W. Frank Ableson", "Charlie Collins", "Robi Sen"],
"categories": ["Open Source", "Mobile"]
}
Моя модель, написанная по данным:
class Book(models.Model):
"""Model of books"""
title = models.TextField(max_length=100,)
isbn = models.CharField(max_length=13, unique=True,)
pageCount = models.PositiveSmallIntegerField(
validators=[MinValueValidator(1), ],)
publishedDate = models.DateTimeField(auto_now_add=True,)
thumbnailUrl = models.ImageField(
upload_to='books/',
)
shortDescription = models.CharField(max_length=1000,)
longDescription = models.TextField()
status = models.CharField(max_length=255,)
authors = models.ManyToManyField(
Author, related_name='author_of_book',
)
categories = models.ManyToManyField(
Category, related_name='category_of_book',
)
Как получить и обработать данные из json-файла?