A modular Python library for querying internet data through curl.
- Uses
curlunder the hood for reliable HTTP querying. - Keeps querying logic modular through provider classes.
- Works as both an importable library and a CLI.
pip install internet-data-curlFor local development:
pip install -e ".[dev]"from data_curl import DataClient
from data_curl.providers.generic import GenericProvider
client = DataClient()
provider = GenericProvider(client)
result = provider.query("https://httpbin.org/get", params={"q": "hello"})
print(result.status_code)
print(result.json())data-curl generic https://httpbin.org/get --param q=helloDataClient: wraps curl execution and response parsing.BaseProvider: extension point for modular providers.QueryResult: standardized response object.
from data_curl.providers.base import BaseProvider
class WeatherProvider(BaseProvider):
name = "weather"
def query_city(self, city: str):
return self.client.get(
"https://example.com/weather",
params={"city": city},
)python -m pip install --upgrade build twine
python -m build
python -m twine check dist/*
python -m twine upload dist/*