介绍pyClamd模块一般用法和常用方法等。
我们可以使用python来控制clamd
,从而操控ClamAv
,需要引入第三方模块:pyClamd
。
使用pyClamd
控制clamd
之前,必须先正确安装带有clamd
的clamav
。可以参考之前的文章:
一、pyClamd简介
PyClamd
是clamd
的python接口。clamd
是ClamAv
杀毒工具的守护进程。
通过使用pyClamd
,我们可以以一种高效而简单的方式,为python程序添加病毒检测功能。
二、安装pyClamd
使用pip
快速安装:
pip install pyClamd
模块官方文档:
http://xael.org/pages/pyclamd-en.html
tip1:英文ok的朋友,可以直接阅读官方文档,当然也可以快速浏览本文后,深入研究官方文档。
tip2:
pypi
上pyClamd
最后更新时间是2017年,作者可能没有继续维护这个项目了,且行且珍惜吧~
三、使用
3.1 常用方法示例
pyClamd
提供了一些常用方法,包括简单测试clamd
是否可用、字节流扫描、文件/文件夹扫描等。下面,我们在python终端来测试这些方法。
第一步:打开python3命令行终端:
[root@程序员的一天 home]# python3
Python 3.7.4 (default, Sep 18 2020, 14:36:11)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>>
第二步:导入pyClamd
:
>>> import pyclamd
>>>
第三步:实例化一个clamd
控制对象:
>>> cd = pyclamd.ClamdAgnostic()
>>>
tip:此处为实例化的第一种方式,后文会继续介绍另外两种方式,包括通过网络连接
clamd
。
第四步:测试clamd
是否可连接:
如果连接成功返回True
。
>>> cd = pyclamd.ClamdAgnostic()
>>> cd.ping()
True
>>>
第五步:查看ClamAv
版本:
>>> cd.version()
'ClamAV 0.103.0/25929/Sun Sep 13 21:53:46 2020'
>>>
第六步:生成测试病毒样本:
pyClamd
提供了一个EICAR()
方法,该方法可以快速生成病毒样本,用于测试。我们先来看看