Вывод wmic CSV содержит значение, которое содержит несколько символов ",", вызывающих сбой синтаксического анализатора Python в Python

Вывод wmic CSV содержит значение, которое содержит несколько символов ",", что приводит к сбою синтаксического анализатора CSV в python. Это очевидная ошибка в wmic, о которой microsft хочет, чтобы я заплатил деньги, чтобы рассказать им об этом. Вопрос в том, есть ли способ обойти или обойти это нелепое злоупотребление форматом CSV.

Пример вывода BAD из CSV: C:\Users\Administrator\Desktop>wmic diskdrive получить модель / формат:csv

Node,Model
FakeHOST,HP LOGICAL VOLUME SCSI Disk Device
FakeHOST, Duo 2.41TB, port 0, FASTDrive 1200GB
FakeHOST, Duo 2.41TB, port 1, FASTDrive 1200GB

Пример вывода того, какие окна должны отображаться:

C:\Users\Administrator\Desktop>wmic diskdrive get model /format:csv

Node,Model
FakeHOST, "HP LOGICAL VOLUME SCSI Disk Device"
FakeHOST, "Duo 2.41TB, port 0, FASTDrive 1200GB"
FakeHOST, "Duo 2.41TB, port 1, FASTDrive 1200GB"

Проблема не столь выражена с этим сокращенным выходом. Однако я использую это только для выражения проблемы. Что мне нужно сделать, так это надежно, включая пустые значения, получить информацию обо всех дисках, которые в настоящее время находятся в системе. В идеале это должно быть выполнено с использованием.

wmic diskdrive list /format:csv

Однако из-за вышеупомянутых проблем.. это с треском провалится..

Есть ли магический параметр, который я пропускаю в выводе wmic, который может позволить wmic напечатать экранирующие символы csv, чтобы этот анализ был правильно проанализирован? Windows не заботится об этой проблеме? Я один во Вселенной? Я знаю, что можно также получить XML из wmic. Тем не менее, вывод xml из wmic очень пушистый и грязный. Если для решения этой проблемы нужно использовать xml, как можно получить это в значениях, которые имеют смысл в python?

0 ответов

Другие вопросы по тегам