1

dmidecode現在、他のすべてに使用していますが、Linux(主にFedora、Ubuntu、Debian、CentOS、RedHat)でビデオカードの仕様を取得するための良い情報をまだ見つけていません

私が使用することを考えていたのは:lspci -vまたはHAL

lspciVGA部分だけを取得してから出力する、データを解析する最も効率的な方法は何でしょうjson

def get_graphic_card_properties():
        import dbus
        bus = dbus.SystemBus()
        hal_manager_object = bus.get_object('org.freedesktop.Hal', '/org/freedesktop/Hal/Manager')
        hal_manager_interface = dbus.Interface(hal_manager_object, 'org.freedesktop.Hal.Manager')
        method = hal_manager_object.get_dbus_method('GetAllDevices', 'org.freedesktop.Hal.Manager')
        print "\n".join(list(iter(method())))

それは私が例として出くわした唯一のコードです.Fedora 17 64ビットではうまくいかないよう/orc/freedesktop/Hal.Managerです.

これに関するアイデアはありますか?

4

1 に答える 1

2

lspciのコマンドサンプルはこちら。したがって、基本的には subprocess を呼び出して、Python からコマンドにアクセスします。

import subprocess

def find_vga():
    vga = subprocess.Popen("lspci -v -s `lspci | awk '/VGA/{print $1}'`", shell=True)
    return vga

print(find_vga())

また

def find_vga():
    vga = subprocess.check_output("lspci -v -s `lspci | awk '/VGA/{print $1}'`", shell=True, executable='/bin/bash')
    return vga

print(find_vga())
于 2012-12-13T20:28:45.433 に答える