Metadata-Version: 2.0
Name: NFSyndication
Version: 0.2.25
Summary: News Feed Syndication - A package that read and fetch RSS feeds from the publications.
Home-page: UNKNOWN
Author: Web SRC
Author-email: web.system.management@gmail.com
License: BSD-2-Clause
Project-URL: Source, https://github.com/web-sys1/NFSyndication/
Keywords: rss,news
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Text Processing :: Markup :: HTML
Description-Content-Type: text/x-rst
Provides-Extra: test
Requires-Dist: colorama (==0.4.4)
Requires-Dist: colorful (==0.5.4)
Requires-Dist: cssutils
Requires-Dist: feedparser (==6.0.2)
Requires-Dist: Jinja2 (==2.11.3)
Requires-Dist: configparser (==5.0.2)
Requires-Dist: pytz (>=2017.2)
Requires-Dist: wheel (==0.24.0)
Provides-Extra: test
Requires-Dist: multipart; extra == 'test'
Requires-Dist: flask; extra == 'test'
Requires-Dist: pre-commit; extra == 'test'
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Requires-Dist: pigments; extra == 'test'
Requires-Dist: requests-toolbelt; extra == 'test'
Requires-Dist: responses (>=0.11.0); extra == 'test'
Requires-Dist: tornado; extra == 'test'
Requires-Dist: twine; extra == 'test'

=====================
News Feed Syndication
=====================

.. image:: https://travis-ci.org/web-sys1/NFSyndication.svg?branch=master
   :target: https://travis-ci.org/web-sys1/NFSyndication

.. image:: https://img.shields.io/pypi/v/NFSyndication.svg
   :target: `PyPI link`_

.. image:: https://img.shields.io/pypi/pyversions/NFSyndication.svg
   :target: `PyPI link`_

.. _PyPI link: https://pypi.org/project/NFSyndication

.. image:: https://github.com/web-sys1/NFSyndication/workflows/CodeQL/badge.svg
   :target: https://github.com/web-sys1/NFSyndication/actions?query=workflow%3ACodeQL++
   :alt: tests


This is a set of scripts for aggregating RSS feeds.

.. image:: https://repl.it/badge/github/web-sys1/NFSyndication
   :target: https://repl.it/github/web-sys1/NFSyndication

Installation
------------

You can install package through the line command:

.. code:: bash

   pip install NFSyndication

*Alternatively you can install it form source code (with git prefix):* ``pip install git+https://github.com/web-sys1/NFSyndication.git``

Usage
-----
Put a list of feed URLs in ``feeds.txt`` file. One feed per line. 

Run the command:

.. code:: bash

   nfsyndication-src
   usage: nfsyndication-src [-h] [-V] [-v] [-f FILENAME [FILENAME ...]] [--outputJSON OUTPUTJSON] [--comparator-filter [COMPARATOR_FILTER]]

   News Feed Syndication - A package that read and fetch RSS feeds from the publications.

   optional arguments:
     -h, --help            show this help message and exit
     -V, --version         Print the package version and quit
     -v, --verbose         Show verbose messages
     -f FILENAME [FILENAME ...], --filename FILENAME [FILENAME ...]
                           specify which file type to use (for example: nfsyndication-src --filename=./path/to/sample.file.txt)
     --outputJSON OUTPUTJSON
                           Save feeds to output file JSON format.
     --comparator-filter [COMPARATOR_FILTER]
                           Enable the comparator. This will randomly ignore stale RSS feeds from the rendering output HTML.

Otherwise, you should do that through **Python** code:

.. code:: python

  from NFSyndication import init as NFS_init

  def entry_point():
    """ We use these conditions to check the statement"""
    subscriptions = [
     'http://feedpress.me/512pixels',
     'http://www.leancrew.com/all-this/feed/',
     'http://ihnatko.com/feed/',
     'http://blog.ashleynh.me/feed',
     'http://www.betalogue.com/feed/',
      ...
     ]

    with open(f'feeds.txt', 'w', encoding='utf8') as f:
     f.write(",".join(subscriptions).replace(',', '\n'))
    return NFS_init()

  """Then initialize code."""
  entry_point()

If you wish to do another way instead of feeds.txt, you should use pass filename to upload list of the feeds. Then run:

.. code:: bash

   nfsyndication-src --filename=path/to/feeds.txt

.. note:: Assuming nothing goes wrong, the posts will be written to ``HTML`` file.

License
-------

See LICENSE_

Bug fix
-------

After many hours of working to development, it was set up an way of path
configuration due to errors. Meanwhile, we have to set code
``os.path.dirname(os.path.realpath(__file__))`` with the globalization
of variables for source code in this package. If you encounter a problem, please report `here <https://github.com/web-sys1/NFSyndication/issues/new>`_.

This package was initially released on August 16, 2020 (under version 0.2.0). For more information about changes, see CHANGELOG_.

.. _LICENSE: https://github.com/web-sys1/NFSyndication/blob/master/LICENSE
.. _CHANGELOG: https://github.com/web-sys1/NFSyndication/blob/master/CHANGELOG.rst


