Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Python 3 implementation of the Stopbadware <https://www.stopbadware.org/> Private API <https://stopbadware.atlassian.net/wiki/display/apidocs/StopBadware+API+Documentation+Home>. In its current form it only implements downloading of events from a specific timestamps, IP addresses and searching based on timestamps.

How To Use

import pysbw
import time

api = pysbw.API('~/.stopbadware.key')

# Retrieve event reports for past 24 hours using UNIX style timestamp
json_response = api.retrieve(int(time.time()) - 24 * 3600)

# Retrieve event report with report UID
json_response = api.retrieve("564f2c78e4b0a131f050f844")

# Retrieve event reports for past 24 hours using search functionality
end = int(time.time())
json_response = self.api.search_between(end - 24 * 3600, end)

Installiation

pip3 install pysbw --pre

Example Key File

[sbw]
apikey=<String of private key>
publickey=<String of public key>

Instantiation

api = pysbw.API('~/.virustotal.key')  # The default way of using the
api = pysbw.API('', private_api_key=<PRIVATE API KEY>, public_api_key=<PUBLIC API KEY>)  # Providing other parameters
api = pysbw.API( ... , max_retires=<N: Number>)  # If specified the API will only retry <N> times to get the response
api = pysbw.API( ... , rate_limit={"requests": 40, "seconds": 300})  # The rate limits for the number of queries to the API

API

Use the method *retrieve()* to get Reports. This method’s first argument can be:

  • a UNIX style timestamp in UTC to retrieve reports since that timestamp

  • an IP address in DOT notation such as ‘8.8.8.8’ to retrieve all reports relating to IP address

  • an event report UID which is a 24 digit hex number.

retrieve() will attempt to auto-detect what you’re giving it. If you want to be explicit, you can use the thing_type parameter with the values:

  • ip

  • timestamp

  • uid

These values are provided as constants that you can use instead in the ‘API_Constans’ class which you can import as follows

from pysbw import API_Constansts

Use the method *search_between()* to search for events between two timestamp values.

References

SBW API Documentation <https://stopbadware.atlassian.net/wiki/display/apidocs/StopBadware+API+Documentation+Home>.

Metadata

Release files for pysbw 0.1a10

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pysbw 0.1a10
File Size Uploaded Provenance
pysbw-0.1a10.tar.gz 7.2 kB Without provenance Details

Release files / pysbw-0.1a10.tar.gz

Download URL pysbw-0.1a10.tar.gz
Size 7.2 kB
Tags Source
SHA-256 checksum
How to use checksums
4c70e9f5a903cd3feaa5d08a5e979e321ea9232b343b1fdeb846dc5336203ab6
BLAKE2b-256 checksum
How to use checksums
8a35ad080ddbe66a31023539ce5380989beaaf2201bf717b401bac751d6868a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for pysbw 0.1a10

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page