Socket
Socket
Sign inDemoInstall

asyncnewsapi

Package Overview
Dependencies
5
Maintainers
1
Alerts
File Explorer

Install Socket

Detect and block malicious and high-risk dependencies

Install

    asyncnewsapi

AsyncIO Python wrapper to News API


Maintainers
1

Readme

asyncnewsapi

License Build Status PyPI version Code Coverage Join the chat at https://gitter.im/pkpintoHUB/asyncnewsapi

An asyncio Python library to perform request against News API. It provides direct access to the endpoints defined in the documentation.

Two classes are implemented, returning async iterators for the request results. Session will return an iterator through the results of a single request. Alternatively, Stream will return an infinite iterator, performing successive requests and continuing to iterate through the results. A minimal implementation can be as simple as:

import asyncio

from asyncnewsapi import Session

async def main():
    async with Session() as api:
        async for article in api.top_headlines(language='en'):
            print(article['title'])

if __name__ == '__main__':
    asyncio.run(main())

The API key should be provided as an environment variable named NEWSAPI_KEY:

export NEWSAPI_KEY="..."

Go to the NewsAPI website to create a free API key.

This library is loosely based on / inspired by newsapi-python, a requests based library by Matt Lisivick.

Installation

Use pip to install this package, either directly from pypi:

pip install asyncnewsapi

or after cloning from github:

pip install .

Tests

Unit tests have been implemented using pytest. To run them, additional dependencies need be installed:

pip install ".[test]"

The tests can then be run using:

python -m pytest -v tests/

from the root of the repo (running it explicitly on the tests/ directory avoids interference with the venv folders).

FAQs


Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc