Skip to main content

django-overcomingbias-api: an API to Robin Hanson's content

Project description

django-overcomingbias-api is a standalone Django app which lets you create and manage an API to (some of) Robin Hanson’s content.

It scrapes the overcomingbias blog (and other sites) and presents the data in a structured form via a REST API. (I may add a GraphQL API later, too.)

Basic Usage

A graphical user interface is provided through the Django admin site.

To initialise a database of all overcomingbias posts, use the “pull” button:

Create and update overcomingbias posts from the admin site

Add new posts with “pull”, and update modified posts with “sync”. (You can also add content from YouTube and Spotify.)

Categorise content according to the “ideas” and “topics” it contains, or by generic “tags”. Use the admin site and custom Admin Actions to manage content.

Link the app in your URL config to access the REST API:

# urls.py

urlpatterns = [
    ...
    path("", include("obapi.urls")),
    ...
]

You should then be able to access the automatic API documentation at URL /api/docs.

Alternatively, provide your own views for each post:

# urls.py
from django.urls import path, register_converter
from obapi.converters import OBPostNameConverter
from myapp.views import ob_detail_view

register_converter(OBPostNameConverter, "ob_name")
urlpatterns = [
    ...
    path(
        "content/overcomingbias/<ob_name:item_id>",
        ob_detail_view, # custom view
        name="obcontentitem_detail",
    ),
    ...
]

Features

Currently, content can be scraped from the following sources:

  • The overcomingbias blog (added automatically)

  • Robin Hanson’s home page

  • YouTube videos (add videos manually using their URLs)

  • Spotify podcast episodes (add episodes manually using their URLs)

Documentation

Read the full documentation here, including the Installation and Getting Started Guide.

Bugs/Requests

Please use the GitHub issue tracker to submit bugs or request features.

Changelog

See the Changelog for a list of fixes and enhancements at each version.

License

Copyright (c) 2022 Christopher McDonald

Distributed under the terms of the MIT license.

All overcomingbias posts are copyright the original authors.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_overcomingbias_api-0.6.1.tar.gz (293.2 kB view details)

Uploaded Source

Built Distribution

django_overcomingbias_api-0.6.1-py3-none-any.whl (39.2 kB view details)

Uploaded Python 3

File details

Details for the file django_overcomingbias_api-0.6.1.tar.gz.

File metadata

File hashes

Hashes for django_overcomingbias_api-0.6.1.tar.gz
Algorithm Hash digest
SHA256 a9e47be140ad9763b43e4f1173812d42aae0df5ffecf849c6d06e6ac5cf67282
MD5 8e34213ec97372f7269cc7e00365119e
BLAKE2b-256 ee685cb3b2489d3dd9e57e91605895fac00701107d695f5d24e9938d3a9b4a37

See more details on using hashes here.

File details

Details for the file django_overcomingbias_api-0.6.1-py3-none-any.whl.

File metadata

File hashes

Hashes for django_overcomingbias_api-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a2bfeedac37633454b7caaf8b15113e2072f17228a79a860b8665804dc8c6ba2
MD5 5dc583dc61dac3bc9464ffde98f5f4ab
BLAKE2b-256 7b9ccec42c76a98f076bf6ccbb97479e37f3e404baf65d5ba9d54d93e8ff57e6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page