python获取Linux下文件版本信息、公司名和产品名的方法

本文实例讲述了python获取Linux下文件版本信息、公司名和产品名的方法,分享给大家供大家参考。具体如下:

区别于前文所述。本例是在linux下得到文件版本信息,主要是通过pefile模块解析文件 中的字符串得到的。代码如下:

  def _get_company_and_product(self, file_path):
    """
    Read all properties of the given file return them as a dictionary.
    @return: a tumple, (company, product)
    """
    mype = pefile.PE(file_path)
    companyName = ""
    productName = "" 

    if hasattr(mype, 'VS_VERSIONINFO'):
      if hasattr(mype, 'FileInfo'):
        for entry in mype.FileInfo:
          if hasattr(entry, 'StringTable'):
            for st in entry.StringTable:
              for k, v in st.entries.items():
                if k == u"CompanyName":
                  companyName = v
                elif k == u"ProductName":
                  productName = v
    if not companyName:
      companyName = None
    if not productName:
      productName = None
    return (companyName, productName)

这里我们只要了公司名称信息和产品名称信息。至于版本号之类的信息也是在字符串资源中。

希望本文所述对大家的Python程序设计有所帮助。

(0)

相关推荐

  • Python脚本获取操作系统版本信息

    查看系统版本信息是一件家常便饭的事情,有时候需要将版本信息录入到资产管理系统中,如果每次手动的去查询这些信息再录入系统那么是一件令人呢头疼的事情,如果采用脚本去完成这件事情,那么情况就有所不同了. 在Python的世界里,获取Windows版本信息和Linux的版本信息都可以采用platform模块,但platform模块也不是万能的,有些特殊的信息(比如Windows的内部版本号)这个模块拿不到,那么只能另辟蹊径了. 在Linux系统中,可以简单的认为一切都是文件,那么就算没有现成的命令可用时

  • python获取文件版本信息、公司名和产品名的方法

    本文实例讲述了python获取文件版本信息.公司名和产品名的方法,分享给大家供大家参考.具体如下: 该python代码可得到文件版本信息.公司名和产品名.其他的信息都在返回的字典中.具体代码如下: def _getCompanyNameAndProductName(self, file_path): """ Read all properties of the given file return them as a dictionary. """

  • Python实现获取操作系统版本信息方法

    最近,想在我的YouMoney(http://code.google.com/p/youmoney/)里面增加提取用户操作系统版本信息.比如windows用户,可能要返回Windows XP ,或者Windows 2003, 苹果用户应该返回Mac OS X 10.5.8.用了很多办法,包括在mac系统里调用系统命令,取环境变量,等等.最后无意发现,原来python里里面有个platform模块就可以干这件事情.省事啊! mac上这么干 复制代码 代码如下: localhost:~ apple$

  • python获取Linux下文件版本信息、公司名和产品名的方法

    本文实例讲述了python获取Linux下文件版本信息.公司名和产品名的方法,分享给大家供大家参考.具体如下: 区别于前文所述.本例是在linux下得到文件版本信息,主要是通过pefile模块解析文件 中的字符串得到的.代码如下: def _get_company_and_product(self, file_path): """ Read all properties of the given file return them as a dictionary. @retur

  • python获得linux下所有挂载点(mount points)的方法

    本文实例讲述了python获得linux下所有挂载点(mount points)的方法.分享给大家供大家参考.具体实现方法如下: # execute the external "mount" command # and parse the output. import commands mount = commands.getoutput('mount -v') lines = mount.split('\n') points = map(lambda line: line.split

  • 使用Python获取Linux系统的各种信息

    在本文中,我们将会探索使用Python编程语言工具来检索Linux系统各种信息.走你. 哪个Python版本? 当我提及Python,所指的就是CPython 2(准确的是2.7).我会显式提醒那些相同的代码在CPython 3 (3.3)上是不工作的,以及提供一份解释不同之处的备选代码.请确保你已经安装了CPython,在终端上输入python或者python3回车,然后你在终端上应该能看到python的提示符(prompt). 请注意,所有的程序在它们第一行都是#!/usr/bin/env/

  • python获取linux系统信息的三种示例

    方法一:psutil模块 #!usr/bin/env python # -*- coding: utf-8 -*- import socket import psutil class NodeResource(object): def get_host_info(self): host_name = socket.gethostname() return {'host_name':host_name} def get_cpu_state(self): cpu_count = psutil.cpu

  • python获取linux系统信息的三种方法

    方法一:psutil模块 #!usr/bin/env python # -*- coding: utf-8 -*- import socket import psutil class NodeResource(object): def get_host_info(self): host_name = socket.gethostname() return {'host_name':host_name} def get_cpu_state(self): cpu_count = psutil.cpu

  • python获取目录下所有文件的方法

    本文实例讲述了python获取目录下所有文件的方法.分享给大家供大家参考.具体分析如下: os.walk() 函数声明:walk(top,topdown=True,onerror=None) 1. 参数top表示需要遍历的目录树的路径 2. 参数topdown的默认值是"True",表示首先返回目录树下的文件,然后在遍历目录树的子目录.Topdown的值为"False"时,则表示先遍历目录树的子目录,返回子目录下的文件,最后返回根目录下的文件 3. 参数onerro

  • python获取Linux发行版名称

    我必须从Python脚本中获取Linux发行版名称.dist平台模块中有一个方法: import platform platform.dist() 但在我的Arch Linux下它返回: >>> platform.dist() ('', '', '') 为什么?我怎么能得到这个名字? PS.我必须检查分发是否是基于Debian的. 更新:我在这里找到了Python站点,自2.6以来,dist()已被弃用. >>> platform.linux_distribution(

  • Python 获取异常(Exception)信息的几种方法

    异常信息的获取对于程序的调试非常重要,可以有助于快速定位有错误程序语句的位置.下面介绍几种 Python 中获取异常信息的方法,这里获取异常(Exception)信息采用 try-except- 程序结构. 如下所示: try: print(x) except Exception as e: print(e) 1. str(e) 返回字符串类型,只给出异常信息,不包括异常信息的类型,如: try: print(x) except Exception as e: print(str(e)) 打印结

  • springboot打成jar后获取classpath下文件失败的解决方案

    springboot打成jar后获取classpath下文件 代码如下: ClassPathResource resource = new ClassPathResource("app.keystore"); File file = resource.getFile(); FileUtils.readLines(file).forEach(System.out::println); 解决方式如下: 1. Spring framework String data = "&quo

随机推荐