Unofficial Medium Python Flask API and SDK
Based on the "Flask" category.
Alternatively, view PyMedium alternatives based on common mentions on social networks and blogs.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of PyMedium or a related project?
PyMedium
PyMedium is an unofficial Medium API written in python flask. It provides developers to access to user, post list and detail information from Medium website. This is a read-only API to access public information from Medium, you can customize this API to fit your requirements and deploy on your own server.
Before running PyMedium API, you have to clone the code from this repository, install requirements at first.
$ git clone git@github.com:enginebai/PyMedium.git
$ cd PyMedium
$ pip install -r requirements.txt
Then download web driver to driver folder from Selenium or via the command-line with curl (update {VERSION} with the latest version code and {OS} with your server operating system.
$ mkdir driver | cd driver
$ curl -O https://chromedriver.storage.googleapis.com/{VERSION}/chromedriver_{OS}.zip
$ unzip chromedriver_{OS}.zip
To run this API application, use the flask command as same as Flask Quickstart
$ export FLASK_APP=./pymedium/api.py
$ export FLASK_DEBUG=1 ## if you run in debug mode.
$ flask run
* Running on http://localhost:5000/
GET /@{username} - Get user profile{
"avatar": "1*Y7zH0UM975YmchIO86uIGA.jpeg",
"bio": "Mixtape of developer, designer and startup. Cofounder and developer of DualCores Studio. Follow my technical blog: http://enginebai.logdown.com/",
"display_name": "Engine Bai",
"facebook": "789985027713671",
"followedby_count": 445,
"following_count": 238,
"publications": [
{
"creator_user_id": "3301d32a6bba",
"description": "Stories from the mix of designer and developer. θ¨θ¨θε·₯η¨ηδΊ€ηΉ,ζ··ζζΏηͺεΊδΈεηζ³εγ",
"display_name": "DualCores Studio",
"follower_count": 302,
"image": {
"image_id": "1*DLixNgsMpK5B74na3EDucQ.png",
"original_height": 591,
"original_width": 591
},
"logo": {
"image_id": "1*DLixNgsMpK5B74na3EDucQ.png",
"original_height": 591,
"original_width": 591
},
"name": "dualcores-studio",
"post_count": 0,
"publication_id": "275e26e7c1b2",
"url": "https://medium.com/dualcores-studio"
},
...more
],
"twitter": "enginebai",
"user_id": "3301d32a6bba",
"username": "enginebai"
}
GET /{publication_name} - Get publication profile{
"creator_user_id": "3301d32a6bba",
"description": "Stories from the mix of designer and developer. θ¨θ¨θε·₯η¨ηδΊ€ηΉ,ζ··ζζΏηͺεΊδΈεηζ³εγ",
"display_name": "DualCores Studio",
"follower_count": 302,
"image": {
"image_id": "1*DLixNgsMpK5B74na3EDucQ.png",
"original_height": 591,
"original_width": 591
},
"logo": {
"image_id": "1*DLixNgsMpK5B74na3EDucQ.png",
"original_height": 591,
"original_width": 591
},
"name": "dualcores-studio",
"post_count": 0,
"publication_id": "275e26e7c1b2",
"url": "https://medium.com/dualcores-studio"
}
GET /@{username}/posts - Get user latest postsGET /{publication_name}/posts - Get publication latest postsGET /top - Get most popular today postsGET /tags/{tag} - Get tagged in popular postsGET /tags/{tag}/latest - Get tagged in latest posts| Name | Type | Description |
|---|---|---|
| n | integer | The count of posts to return. Default is 10. |
[
{
"image_count": 14,
"post_date": 1478533474858,
"post_id": "99a3d86df228",
"preview_image": {
"image_id": "1*zhnQJhNzp-Oal1-GU1EUKw.png",
"original_height": 412,
"original_width": 608
},
"read_time": 7.74811320754717,
"recommend_count": 351,
"response_count": 10,
"title": "Make an android custom view, publish and open source.",
"url": "https://medium.com/dualcores-studio/make-an-android-custom-view-publish-and-open-source-99a3d86df228",
"word_count": 1669
},
...more
]
GET /post - Get the post content| Name | Type | Description |
|---|---|---|
| u | string | The post url to parse content. |
| format | string | (optional) The format of response, the value could be text, html, md, json, default is text. |
## Simple text, json, html, markdown format
Feel free to submit bug reports or feature requests and make sure you read the contribution guideline before opening any issue.
feature/bug).[Read more on contributing](./CONTRIBUTING.md).
Copyright (c) 2017 Engine Bai Licensed under the MIT license.
*Note that all licence references and agreements mentioned in the PyMedium README section above
are relevant to that project's source code only.
Do not miss the trending, packages, news and articles with our weekly report.