31 lines
1.1 KiB
Python
31 lines
1.1 KiB
Python
import asyncio
|
|
import argparse
|
|
import aiohttp
|
|
from wallabag_api.wallabag import Wallabag
|
|
from helpers import load_configuration, connect_to_wallabag
|
|
|
|
|
|
async def get_paginated_entries(w_api: Wallabag, per_page: int, page: int):
|
|
return await w_api.get_entries(perPage=per_page, page=page)
|
|
|
|
|
|
async def async_main(path: str = "config.ini", page: int = 1, per_page: int = 10):
|
|
async with aiohttp.ClientSession() as session:
|
|
configuration = dict(load_configuration(path))
|
|
w_api = await connect_to_wallabag(configuration, session)
|
|
entries = await get_paginated_entries(w_api, per_page, page)
|
|
print(entries)
|
|
|
|
|
|
def main():
|
|
parser = argparse.ArgumentParser()
|
|
parser.add_argument("--config", default="config.ini", help="Path to config file")
|
|
parser.add_argument("--page", type=int, default=1, help="Page number")
|
|
parser.add_argument("--per-page", type=int, default=10, help="Entries per page")
|
|
args = parser.parse_args()
|
|
asyncio.run(async_main(args.config, args.page, args.per_page))
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|