Utils Module¶
The utils module provides various utility functions and integrations for The Data Packet.
MongoDB Integration¶
- class the_data_packet.utils.mongodb.MongoDBClient(username: str, password: str)[source]¶
Bases:
objectA MongoDB client wrapper for database operations.
This class provides a simplified interface for connecting to MongoDB and performing common database operations like inserting and querying documents.
- client¶
The MongoDB client instance.
- Type:
MongoClient
- db¶
The MongoDB database instance.
- Type:
Database
- get_collection(collection_name: str) Collection[source]¶
Get a collection from the database.
- Parameters:
collection_name (str) – The name of the collection to retrieve.
- Returns:
The MongoDB collection instance.
- Return type:
Collection
- insert_document(collection_name: str, document: Dict[str, Any]) InsertOneResult[source]¶
Insert a single document into a collection.
S3 Storage¶
AWS S3 storage backend.
- class the_data_packet.utils.s3.S3UploadResult(success: bool, s3_url: str | None = None, error_message: str | None = None, file_size_bytes: int | None = None)[source]¶
Bases:
objectResult of S3 upload operation.
- class the_data_packet.utils.s3.S3Storage(bucket_name: str | None = None, aws_access_key_id: str | None = None, aws_secret_access_key: str | None = None, region: str | None = None)[source]¶
Bases:
objectAWS S3 storage backend.
- __init__(bucket_name: str | None = None, aws_access_key_id: str | None = None, aws_secret_access_key: str | None = None, region: str | None = None)[source]¶
Initialize S3 storage.
- Parameters:
bucket_name – S3 bucket name (defaults to config)
aws_access_key_id – AWS access key (defaults to config/env)
aws_secret_access_key – AWS secret key (defaults to config/env)
region – AWS region (defaults to config)
- upload_file(local_path: Path, s3_key: str | None = None, content_type: str | None = None) S3UploadResult[source]¶
Upload a file to S3.
- Parameters:
local_path – Path to local file
s3_key – S3 object key (defaults to filename)
public – Whether to make the file publicly readable
content_type – MIME type for the file
- Returns:
S3UploadResult with upload details
HTTP Utils¶
HTTP client utility.
- class the_data_packet.utils.http.HTTPClient(timeout: int | None = None, user_agent: str | None = None)[source]¶
Bases:
objectSimple HTTP client with error handling and configuration.
- __init__(timeout: int | None = None, user_agent: str | None = None)[source]¶
Initialize HTTP client.
- Parameters:
timeout – Request timeout (defaults to config)
user_agent – User agent string (defaults to config)
- get(url: str, **kwargs: Any) Response[source]¶
Make a GET request.
- Parameters:
url – URL to fetch
**kwargs – Additional arguments passed to requests.get
- Returns:
Response object
- Raises:
NetworkError – If request fails
- get_soup(url: str, **kwargs: Any) BeautifulSoup[source]¶
Get a URL and return parsed HTML.
- Parameters:
url – URL to fetch
**kwargs – Additional arguments passed to get()
- Returns:
BeautifulSoup object
- Raises:
NetworkError – If request fails