PyDevTo - unofficial dev.to api for python

Loftie Ellis - Nov 3 '19 - - Dev Community

Dev.to has a pretty awesome community for sharing coding knowledge. I wanted to republish my posts to them (and also link to the comments) so I made this library, and in the interest of sharing decided to opensource it for anyone to use.

PyDevTo is a a wrapper around the dev.to api endoints, with a few helper functions to help with the distribution of articles.

Features

  • Implements all endpoints from https://docs.dev.to/api/

  • Implements a few other api endpoints not documented but available in the source, such as users and follow_suggestions.

  • Includes a helper method to convert html to dev.to specific markdown, including support for dev.to specific embeds such as YouTube.

Installation

Use the package manager pip to install pydevto.

pip install pydevto

Usage

Make sure you have an api key to use the authenticated endpoints. You can get your key from https://dev.to/settings/account (You can use pydevto without an api key for some functions, such as the public articles)

import pydevto
api = pydevto.PyDevTo(api_key='MY_KEY')
api.articles()  # returns list of your own published articles

Methods

import pydevto
api = pydevto.PyDevTo(api_key='MY_KEY')
api.public_articles(page=None, tag=None, username=None, state=None, top=None)  # Return list of public (published) articles
api.public_article(id)  # Return a single public (published) article given its id
api.articles(page=None, per_page=None, state="published")  # Return a list of user articles
api.create_article(...)  # Create an article
api.update_article(id, ...)  # Update an article
api.user(id=None, username=None)  # Return user information
api.follow_suggestions(page=None)  # Return list of follow suggestions
api.tags(page=None)  # Return list of tags
api.webhooks()  # Return list of webhooks
api.webhook(id)  # Return single webhook with id
api.create_webhook(source, target_url, events)  # Create a new webhook
api.delete_webhook(id)  # Delete  a webhook with id

PyDevTo contains a helper function to convert html to dev.to specific markdown. (https://dev.to/p/editor_guide) It supports images with captions using the HTML figcaption tag, and converts embeds such as YouTube to dev.to specific liquid tags.

>>> import pydevto
>>> pydevto.html_to_markdown('<h1>Heading</h1') 
>>> '# Heading\n\n'
>>> pydevto.html_to_markdown('<iframe src="https://www.youtube.com/embed/kmjiUVEMvI4"></iframe>') 
>>> '\n{% youtube kmjiUVEMvI4 %}\n'  

GitHub logo lpellis / pydevto

Unofficial dev.to api

PyDevTo

Unofficial dev.to api for python.

Features

  • Implements all endpoints from https://docs.dev.to/api/
  • Implements a few other api endpoints not documented but available in the source, such as users and follow_suggestions
  • Includes a helper method to convert html to dev.to specific markdown, including support for dev.to specific embeds such as YouTube.

Installation

Use the package manager pip to install pydevto.

pip install pydevto

Usage

Make sure you have an api key to use the authenticated endpoints. You can get your key from https://dev.to/settings/account (You can use pydevto without an api key for some functions, such as the public articles)

import pydevto
api = pydevto.PyDevTo(api_key='MY_KEY')
api.articles()  # returns list of your own published articles

Methods

import pydevto
api = pydevto.PyDevTo(api_key='MY_KEY')
api.public_articles(page=None, tag=None, username=None



Let me know if you run into any issues.

PS I originally published this post at https://loftie.com/post/pydevto-unofficial-devto-api and used this very library to make this post :)

. . . . . . . . . . . . .
Terabox Video Player