# AP RSS-reader
[][pypi ap-rss-reader]
[](https://opensource.org/licenses/MIT)
[](http://makeapullrequest.com)
[](https://www.python.org/)
[](https://mypy.readthedocs.io/en/stable/)
[](https://results.pre-commit.ci/latest/github/aplatkouski/ap-rss-reader/develop)
[](https://pycqa.github.io/isort/)
[](https://github.com/psf/black)
[](https://github.com/aplatkouski/ap-rss-reader/actions?query=workflow%3A%22Run+tests%22+branch%3Amaster)
[](https://codecov.io/gh/aplatkouski/ap-rss-reader)
[](https://www.codacy.com/gh/aplatkouski/ap-rss-reader/dashboard?utm_source=github.com&utm_medium=referral&utm_content=aplatkouski/ap-rss-reader&utm_campaign=Badge_Grade)
[](https://requires.io/github/aplatkouski/ap-rss-reader/requirements/?branch=develop)
[](https://www.travis-ci.com/aplatkouski/ap-rss-reader)
## Installation
The project has been tested only with [python 3.8][python] on Ubuntu Linux and
Windows 10. If you have python 3.8 and above installed in your machine, just
install the AP RSS-reader from [PyPI][pypi ap-rss-reader]:
```shell
python --version
pip install ap-rss-reader
```
You can find source code of this package on [github][]. See
[aplatkouski/ap-rss-reader][] repository.
## How to use it
```shell
$ ap_rss_reader "https://news.yahoo.com/rss/" --limit 1
Feed: Yahoo News - Latest News & Headlines
Url: https://news.yahoo.com/rss/
Description: The latest news and headlines from Yahoo! News. Get breaking news stories and in-depth coverage with videos and photos.
Title: California finally lifts its last big COVID restrictions. Did the state play it too safe?
Link: https://news.yahoo.com/california-finally-lifts-its-last-big-covid-restrictions-did-the-state-play-it-too-safe-133838908.html
Date: 2021-06-15 13:38:38
Source: Yahoo News
Links:
[1]: https://s.yimg.com/os/creatr-uploaded-images/2021-06/28ddb610-cddc-11eb-8e72-e3afb144a08a (content).
```
Utility provides the following interface:
```shell
usage: ap_rss_reader [-h] [--date DATE] [--limit LIMIT] [--verbose] [--version] [--json] [--to-html TO_HTML] [--to-pdf TO_PDF] [source]
AP RSS-reader with CLI.
positional arguments:
source RSS URL
optional arguments:
-h, --help show this help message and exit
--date DATE Limit news topics by publishing date: YYYYMMDD
--limit LIMIT Limit news topics if this parameter provided
--verbose Provides additional details as to what the program is doing
--version Shows the version of the program and exits
--json Print result as JSON in stdout
--to-html TO_HTML Save rss channel as html file with given path: 'C:\rss.html' or '/home/user/rss.html'.
--to-pdf TO_PDF Save rss channel as pdf file with given path: 'C:\rss.html' or '/home/user/rss.html'.
```
In case of using `--json` argument utility converts the news into
[JSON](https://en.wikipedia.org/wiki/JSON) format:
```json
{
"articles": [
{
"link": "https://news.yahoo.com/california-finally-lifts-its-last-big-covid-restrictions-did-the-state-play-it-too-safe-133838908.html",
"media": [
[
"content",
"https://s.yimg.com/os/creatr-uploaded-images/2021-06/28ddb610-cddc-11eb-8e72-e3afb144a08a",
"86",
"130"
]
],
"pubdate": "2021-06-15 13:38:38",
"source": "Yahoo News",
"title": "California finally lifts its last big COVID restrictions. Did the state play it too safe?"
}
],
"description": "The latest news and headlines from Yahoo! News. Get breaking news stories and in-depth coverage with videos and photos.",
"title": "Yahoo News - Latest News & Headlines",
"url": "https://news.yahoo.com/rss/"
}
```
With the argument `--verbose` program prints all logs in stdout.
## Development & Contributing
Development of this happens on GitHub, patches including tests, documentation
are very welcome, as well as bug reports!
This project has a [code of conduct][]. By interacting with this repository,
organization, or community you agree to abide by its terms.
See also our [CONTRIBUTING.md][].
## Copyright
Copyright (c) 2021 Artsiom Platkouski. `ap-rss-reader` is licensed under the
MIT License - see the [LICENSE.txt][] file for details.
[python]: https://www.python.org/
[pypi ap-rss-reader]: https://pypi.org/project/ap-rss-reader/
[github]: https://github.com
[aplatkouski/ap-rss-reader]: https://github.com/aplatkouski/ap-rss-reader
[code of conduct]:
https://github.com/aplatkouski/ap-rss-reader/blob/master/CODE_OF_CONDUCT.md
[contributing.md]:
https://github.com/aplatkouski/ap-rss-reader/blob/master/CONTRIBUTING.md
[license.txt]:
https://github.com/aplatkouski/ap-rss-reader/blob/master/LICENSE.txt