Skip to main content

Asyncio library for Avast antivirus

Project description

asyncio (PEP 3156) Avast Linux support

Features

  • Scanning files and/or directories.
  • Checking URLs.
  • Exclude files from the scanning.
  • Get and set the list of enabled or disabled pack and flags.

Requirements

License

aioavast is offered under the MIT license.

Source code

The latest developer version is available in a github repository: https://github.com/earada/aioavast

Getting started

Scanning

Scan a file and prints its output:

import asyncio
from aioavast import Avast

@asyncio.coroutine
def scan(item):
    av = Avast()
    yield from av.connect()
    return (yield from av.scan(item))

if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    results = loop.run_until_complete(scan('/bin/ls'))
    print(results)

You can check an url too:

return (yield from av.checkurl('http://python.org'))

Exclude items

There is also a possibility to exclude certain files from being scanned.

import asyncio
from aioavast import Avast

@asyncio.coroutine
def dont_scan(item):
    av = Avast()
    yield from av.connect()
    yield from av.exclude(item)
    return (yield from av.scan(item))

if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    results = loop.run_until_complete(scan('/bin/ls'))
    print(results)

You can retrieve excluded items by:

excluded = yield from av.exclude()

Other methods

You could modify Flags and Packs too.

flags = yield from av.flags()
yield from av.flags("-allfiles")

packs = yield from av.pack()
yield from av.flags("-ole")

Project details


Release history Release notifications

This version
History Node

1.0.1

History Node

1.0.0

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
aioavast-1.0.1.tar.gz (3.0 kB) Copy SHA256 hash SHA256 Source None Aug 12, 2015

Supported by

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