{ "info": { "author": "Michal Gump Szczesny", "author_email": "gump@gump.tv", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: Unix", "Programming Language :: Python" ], "description": "rss2rest\n========\n\n- Configure your feeds in the `settings` file\n- Turns RSS feeds into a RESTful API with the use of TastyPie and Feedparser (perfect for use with `backbone.js`)\n- Map feeds to Django models, few convenienve models are provided (see below)\n- Write your own mdels representing a feed item, you just need to provide a mapping from feed nodes to model fields\n- Harvest feeds using `./manage.py syncdb` command\n- Access your feeds direct via tastypie API resource\n\n![](https://secure.travis-ci.org/gump/rss2rest.png \"Travis CI build status\")\n\nInstallation\n============\n\nInstall via PIP:\n\n $ pip install django-rss2rest\n\n\nAdd to your `INSTALLED_APPS` the following:\n\n INSTALLED_APPS = [\n ...,\n 'tastypie',\n 'rss2rest',\n ]\n\nDefine your feeds:\n\n RSS2REST_FEEDS = [\n {'feed': 'http://feedurl/',\n 'model': 'rss2rest.FeedItem'},\n ]\n\nAdd RESTful routing to your `urls.py`:\n\n from rss2rest.api import FeedItemResource\n feed_item_resource = FeedItemResource()\n urlpatterns += patterns('rss2rest',\n (r'^api/', include(feed_item_resource.urls)),\n )\n\nUsage\n=====\n\nSynchronise Feeds:\n\n ./manage.py syncrss2rest\n\nConsume feeds go to:\n\n http://127.0.0.1/rss2rest/api/\n\n\nModels for your feeds\n=====================\n\nIn order for the feed to be exposed as a RESTful resource the feed must be mapped to a django model.\n`rss2rest` provides a few pre-defined models that fit some typical scenarios.\n\n\n**Generic feed item models:**\n\n* `FeedItem` - generic feed item\n* `VimeoFeedItem` - maps well to Vimeo Likes RSS feed\n* `FlickrFeedItem` - maps well to Flickr Likes RSS feed\n\n\n**Writing your own feed item model:**\n\n* Create your own model for the feed to provide custom mapping, etc\n* Simply extend the abstract `AbstractFeedItem` class present in the `rss2rest.models` file.\n* Put `MAPPING` dictionary as a class property and you're ready to go\n* Make sure you put your new model class name (as string in the format of `app.ModelName`) into the `RSS2REST_FEEDS`\n setting\n* If your model is pretty generic and maps to a public feed - make sure you submit it as a pull request with\n accompanying tests to be included in the `rss2rest`\n\n\n**Generic tasty pie resources**\n\n* `FeedItemResource` - resource name: `feed_item`\n* `FlickrItemResource` - resource name: `flickr`\n* `VimeoItemResource` - resource name: `vimeo`\n\n**Custom resources**\n\n* You can build your custom resource as per [Tastypie's documentation](http://django-tastypie.readthedocs.org/en/latest/index.html)\n\nContribute\n==========\n\nSet up in development mode:\n\n $ git clone git://github.com/gump/rss2rest.git\n $ cd rss2rest\n $ mkvirtualenv rss2rest\n $ python setup.py develop\n $ cd sandbox/\n $ cp local_settings_sample.py local_settings.py\n $ ./manage.py syncdb\n $ ./manage.py test rss2rest\n\nPlanned development\n===================\n\n* More tests for all types of feeds\n* More generic feed item models to cater for other common use cases\n* `published` flag on abstract model to drive presence in the RESTful API (configurable with publish/unpublish flag\n using django admin panel); way to define default behaviour using a setting\n* Defining your feeds in the database", "description_content_type": null, "docs_url": "https://pythonhosted.org/django-rss2rest/", "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/gump/rss2rest", "keywords": "Django,RSS,RESTful API", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "django-rss2rest", "package_url": "https://pypi.org/project/django-rss2rest/", "platform": "linux", "project_url": "https://pypi.org/project/django-rss2rest/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/gump/rss2rest" }, "release_url": "https://pypi.org/project/django-rss2rest/0.1/", "requires_dist": null, "requires_python": null, "summary": "RSS scraper with immediate RESTful access to feed items", "version": "0.1" }, "last_serial": 790518, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "771c4591d8a31a5dfa16f09213588d53", "sha256": "6a2b5b2d83ee41c08cedbc7f94590d97edd8c5e014e74283aeef39ba795565d4" }, "downloads": -1, "filename": "django-rss2rest-0.1.tar.gz", "has_sig": false, "md5_digest": "771c4591d8a31a5dfa16f09213588d53", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5719, "upload_time": "2012-06-22T10:38:21", "url": "https://files.pythonhosted.org/packages/56/a7/b2922c3f90923245926dbe5f3b87d9d2680f26980e1726279887b95d99c4/django-rss2rest-0.1.tar.gz" } ], "0.1-pre-alpha": [] }, "urls": [ { "comment_text": "", "digests": { "md5": "771c4591d8a31a5dfa16f09213588d53", "sha256": "6a2b5b2d83ee41c08cedbc7f94590d97edd8c5e014e74283aeef39ba795565d4" }, "downloads": -1, "filename": "django-rss2rest-0.1.tar.gz", "has_sig": false, "md5_digest": "771c4591d8a31a5dfa16f09213588d53", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5719, "upload_time": "2012-06-22T10:38:21", "url": "https://files.pythonhosted.org/packages/56/a7/b2922c3f90923245926dbe5f3b87d9d2680f26980e1726279887b95d99c4/django-rss2rest-0.1.tar.gz" } ] }