python实现计算资源图标crc值的方法


Posted in Python onOctober 05, 2014

本文实例讲述了python实现计算资源图标crc值的方法,分享给大家供大家参考。具体方法如下:

实现该功能的关键在于解析资源信息,找到icon的数据,然后计算这些数据的crc

具体实现代码如下:

def _get_iconcrc(self, file_path): 
    """ 
    Generates the crc32 hash of the icon of the file. 
    @return: str, the str value of the file's icon 
    """ 
    iconData = "" 
 
    mype = pefile.PE(file_path) 
    if hasattr(mype, "DIRECTORY_ENTRY_RESOURCE"): 
      resIcons = filter(lambda x: x.id==pefile.RESOURCE_TYPE['RT_ICON'], mype.DIRECTORY_ENTRY_RESOURCE.entries) 
      if len(resIcons)>0: 
        resIcons = resIcons[0] 
        if hasattr(resIcons, "directory"): 
          for resId in resIcons.directory.entries: 
            if hasattr(resId, 'directory'): 
              for resLang in resId.directory.entries: 
                iconData += mype.get_data(resLang.data.struct.OffsetToData, resLang.data.struct.Size) 
     
    if not iconData: 
      print "not iconData" 
      return None 
    else: 
      return self._crc32(iconData)

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

Python 相关文章推荐
Python导入txt数据到mysql的方法
Apr 08 Python
详解python发送各类邮件的主要方法
Dec 22 Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
Mar 30 Python
pandas筛选某列出现编码错误的解决方法
Nov 07 Python
Python字符串内置函数功能与用法总结
Apr 16 Python
基于Python中的yield表达式介绍
Nov 19 Python
Python短信轰炸的代码
Mar 25 Python
基于python实现检索标记敏感词并输出
May 07 Python
python向企业微信发送文字和图片消息的示例
Sep 28 Python
安装Anaconda3及使用Jupyter的方法
Oct 27 Python
Python之京东商品秒杀的实现示例
Jan 06 Python
python之PySide2安装使用及QT Designer UI设计案例教程
Jul 26 Python
python求crc32值的方法
Oct 05 #Python
Python获取文件ssdeep值的方法
Oct 05 #Python
python获取Linux下文件版本信息、公司名和产品名的方法
Oct 05 #Python
python获取文件版本信息、公司名和产品名的方法
Oct 05 #Python
python实现调用其他python脚本的方法
Oct 05 #Python
跟老齐学Python之让人欢喜让人忧的迭代
Oct 02 #Python
跟老齐学Python之关于循环的小伎俩
Oct 02 #Python
You might like
牡丹941资料
2021/03/01 无线电
解析php中memcache的应用
2013/06/18 PHP
PHP实现通过中文字符比率来判断垃圾评论的方法
2014/10/20 PHP
Mootools 1.2教程 选项卡效果(Tabs)
2009/09/15 Javascript
jQuery EasyUI API 中文文档 搜索框
2011/09/29 Javascript
js拆分字符串并将分割的数据放到数组中的方法
2015/05/06 Javascript
简介JavaScript中Math.cos()余弦方法的使用
2015/06/15 Javascript
jquery实现经典的淡入淡出选项卡效果代码
2015/09/22 Javascript
jquery实现树形菜单完整代码
2015/12/29 Javascript
JavaScript表单验证实例之验证表单项是否为空
2016/01/10 Javascript
jQuery可见性过滤选择器用法示例
2016/09/09 Javascript
微信小程序之仿微信漂流瓶实例
2016/12/09 Javascript
JS中parseInt()和map()用法分析
2016/12/16 Javascript
认识less和webstrom的less配置方法
2017/08/02 Javascript
js 只比较时间大小的实例
2017/10/26 Javascript
Angular 作用域scope的具体使用
2017/12/11 Javascript
vue 实现通过手机发送短信验证码注册功能
2018/04/19 Javascript
vue 使用element-ui中的Notification自定义按钮并实现关闭功能及如何处理多个通知
2019/08/17 Javascript
关于Node.js中频繁修改代码重启服务器的问题
2020/10/15 Javascript
[03:44]2014DOTA2国际邀请赛 71专访:DK战队赛前讨论视频遭泄露
2014/07/13 DOTA
[38:38]完美世界DOTA2联赛PWL S3 access vs Rebirth 第二场 12.17
2020/12/18 DOTA
浅谈MySQL中的触发器
2015/05/05 Python
python append、extend与insert的区别
2016/10/13 Python
TensorFlow损失函数专题详解
2018/04/26 Python
python实现复制文件到指定目录
2019/10/16 Python
pytorch 中的重要模块化接口nn.Module的使用
2020/04/02 Python
DRF框架API版本管理实现方法解析
2020/08/21 Python
美国最大点评网站:Yelp
2018/02/14 全球购物
简历中个人自我评价范文
2013/12/26 职场文书
职业规划书如何设计?
2014/01/09 职场文书
初中班主任寄语
2014/04/04 职场文书
科学发展观演讲稿
2014/09/11 职场文书
夫妻婚内购房协议书
2014/10/05 职场文书
打架检讨书范文
2015/01/27 职场文书
2016大一新生军训感言
2015/12/08 职场文书
排查MySQL生产环境索引没有效果
2022/04/11 MySQL