Skip to main content

Parse dmidecode into reasonable python

Project description

# dmiparse
parse dmidecode with python
=======
[![Build Status](https://api.travis-ci.org/xmonader/dmiparse.svg?branch=master)](https://travis-ci.org//xmonader/dmiparse)
[![codecov](https://codecov.io/gh/xmonader/dmiparse/badge.svg)](https://codecov.io/gh//xmonader/dmiparse)


# dmiparse
Convert dmidecode output into clean queryable structure

## Installation
pip3 install dmiparse

## Example
```ipython
In [7]: print(sample1)

# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 2.6 present.

Handle 0x0001, DMI type 1, 27 bytes
System Information
Manufacturer: LENOVO
Product Name: 20042
Version: Lenovo G560
Serial Number: 2677240001087
UUID: CB3E6A50-A77B-E011-88E9-B870F4165734
Wake-up Type: Power Switch
SKU Number: Calpella_CRB
Family: Intel_Mobile



In [8]: from dmiparse import parse_dmi

In [9]: parse_dmi(sample1)
Out[9]: {'System Information': <dmiparse.Section at 0x7f88b0a5add8>}

In [10]: from json import dumps

In [11]: print(dumps(parse_dmi(sample1), default=lambda o: o.__dict__, indent=4))
{
"System Information": {
"props": {
"Manufacturer": {
"val": "LENOVO",
"items": []
},
"Product Name": {
"val": "20042",
"items": []
},
"Version": {
"val": "Lenovo G560",
"items": []
},
"Serial Number": {
"val": "2677240001087",
"items": []
},
"UUID": {
"val": "CB3E6A50-A77B-E011-88E9-B870F4165734",
"items": []
},
"Wake-up Type": {
"val": "Power Switch",
"items": []
},
"SKU Number": {
"val": "Calpella_CRB",
"items": []
},
"Family": {
"val": "Intel_Mobile",
"items": []
}
},
"title": "System Information",
"handleline": "Handle 0x0001, DMI type 1, 27 bytes"
}
}

```

## running tests
`tox` or `pytest`

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
dmiparse-0.2.0.tar.gz (5.0 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page