Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stuartmackay/django-feeds
A Django app for aggregating RSS feeds and publishing the articles on a web site.
https://github.com/stuartmackay/django-feeds
app django rss
Last synced: about 5 hours ago
JSON representation
A Django app for aggregating RSS feeds and publishing the articles on a web site.
- Host: GitHub
- URL: https://github.com/stuartmackay/django-feeds
- Owner: StuartMacKay
- License: apache-2.0
- Created: 2023-03-04T08:35:23.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2023-10-23T18:41:48.000Z (about 1 year ago)
- Last Synced: 2024-12-24T09:05:40.747Z (17 days ago)
- Topics: app, django, rss
- Language: Python
- Homepage:
- Size: 193 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Django Feeds
Django Feeds is an aggregator for entries from RSS and Atom feeds.
## Quick Start
Download and install the app:
```pip istall django-rss-feeds```
Add the app to Django:
```python
INSTALLED_APPS = [
...,
"tagulous",
"feeds.apps.Config",
]
```Run the migrations:
```python manage.py migrate```
## Demo
The project contains demonstration Django application, with celery, that
lets you see how it all works. The demo site aggregates the feeds and
publishes the Articles, grouped by date, with each page showing the Articles
for the past 7 days. Links on each entry allow you navigate to ListViews
for each Source, Author or Tag.```shell
git clone [email protected]:StuartMacKay/django-feeds.git
docker-compose up
```Next run a shell on the web service, so you can create an admin account,
log in and add a Source and a Feed.```shell
docker-compose exec web bash
./manage.py createsuperuser
```Now log into the Django Admin. In the Feeds section, add a Source and a Feed
for that Source, for example, https://news.ycombinator.com/rss. Now in the
Feed changelist, select the Feed you just added and run the 'Load selected
feeds' action. Voila, you now have a set of Articles created from the feed.## Settings
`FEEDS_TASK_SCHEDULE`, default "0 * * * *". A crontab string that
set when a Celery task runs to check whether any Feeds are scheduled
to load.`FEEDS_LOAD_SCHEDULE`, default "0 * * * *". A crontab string that sets
when Feeds is scheduled to be loaded. This can be overridden on Feeds
individually.`FEEDS_USER_AGENT`, the User-Agent string that identifies who is requesting
the feed. Some sites won't work without this set. In any case it's always
good manners to identify yourself.`FEEDS_FILTER_TITLE`, default None. Python path to a function that will be
dynamically imported to process the title of an entry before it is used to
create or update an Article.`FEEDS_FILTER_AUTHORS`, default None. Python path to a function that will be
dynamically imported to process the list of authors for an entry before it is
used to create or update an Article.`FEEDS_FILTER_TAGS`, default None. Python path to a function that will be
dynamically imported to process the list of tags for an entry before it is
used to create or update an Article.## Contributing
This app was written with a single use-case - republishing a list of links
to posts from other blogs. It performs that function well, but, as usual,
there is always room for improvement. Feedback, feature requests, bug
reports, improvements to the documentation are all welcome. Read the TODO
list for things that need work and the HowTos in the docs directory to
get started.