Я создаю генератор отчетов, который запрашивает определенную информацию через API, а затем анализирует или записывает ответ в файл CSV.Python Report Builder
У меня все это хорошо работает.
Проблема в том, что в ответе API есть пустое поле. Это приводит к тому, что столбцы в CSV «сворачиваются».
Пример
URL CATEGORY USER
URL USER
URL CATEGORY USER
Вот пример сырого ответа API, содержащего две линии (линия начинается с { "URL"). Второй отсутствуют «sales_tax_value» так что некоторые, как нужно пустое поле, вставив для компенсации:
{
"expenses": [
{
"url": "xxxxxx",
"user": " xxxxxx ",
"project": " xxxxxx ",
"category": "xxxxxx ",
"dated_on": "xxxxxx ",
"currency": "xxxxxx ",
"gross_value": "xxxxxx",
"native_gross_value": " xxxxxx ",
"sales_tax_rate": " xxxxxx ",
"sales_tax_value": " xxxxxx ",
"native_sales_tax_value": " xxxxxx",
"description": " xxxxxx ",
"mileage": " xxxxxx ",
"engine_size_index": "xxxxxx",
"engine_type_index": "xxxxxx",
"vehicle_type": "xxxxxx",
"initial_rate_mileage": " xxxxxx ",
"have_vat_receipt": "xxxxxx",
"updated_at": " xxxxxx ",
"created_at": " xxxxxx "
},
{
"url": "xxxxxx",
"user": " xxxxxx ",
"project": " xxxxxx ",
"category": "xxxxxx ",
"dated_on": " xxxxxx ",
"currency": " xxxxxx ",
"gross_value": " xxxxxx ",
"native_gross_value": " xxxxxx ",
"sales_tax_rate": " xxxxxx ",
"description": " xxxxxx ",
"mileage": " xxxxxx ",
"engine_size_index": "xxxxxx",
"engine_type_index": "xxxxxx",
"vehicle_type": " xxxxxx ",
"initial_rate_mileage": " xxxxxx ",
"have_vat_receipt": "xxxxxx",
"updated_at": " xxxxxx ",
"created_at": " xxxxxx "
}
]
}
Я попытался длинный ряд «если» заявление, чтобы проверить, если каждый «заголовок» присутствует, и если не добавлять это к линии, но это пока не увенчалось успехом. Это привело к созданию некоторых больших (1.1GB) CSV-файлов. Я поставил это на плохо написанные петли с моей стороны.
Любые указатели были бы очень благодарны, и если вам нужна дополнительная информация, пожалуйста, дайте мне знать.
показать нам свой код, чтобы мы могли определить, как его исправить. – dugres