Skip to content
An unofficial API for Quora.
Branch: master
Clone or download
Latest commit 59c8bac Oct 9, 2016
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore init Jul 24, 2014
CHECKS prod Jan 28, 2016
LICENSE license Oct 9, 2016
Procfile prod Jan 28, 2016
README.md endpoints Jul 25, 2015
requirements.txt reqs Feb 7, 2016
server.py caching Feb 1, 2016

README.md

Quora API

Note: parts of this API may be broken due to changes on Quora's end. Please open issues and make pull requests regarding this at csu/pyquora.

An unofficial API for Quora.

Table of Contents

API Usage

API Base URL: http://quora.christopher.su

Endpoints Summary

GET: /users/<user>

Example

Example usage: GET http://quora.christopher.su/users/Christopher-J-Su

Example result:

{
  "answers": 301, 
  "blogs": null, 
  "edits": 5576, 
  "followers": 173, 
  "following": 167, 
  "name": "Christopher-J-Su", 
  "posts": 6, 
  "questions": 110, 
  "topics": null, 
  "username": "Christopher-J-Su"
}

Note: due to recent Quora UI changes, the blogs and topics statistics are currently not working and will always return null.

GET: /users/<user>/activity

Get the user's activity.

Example

Example usage: GET http://quora.christopher.su/users/Christopher-J-Su/activity

Output (excerpt):

{
  "activity": [
    {
      "link": "http://www.quora.com/University-of-Washington/What-does-the-UW-CS-department-gain-from-barring-other-UW-students-from-taking-its-courses/answer/Christopher-J-Su", 
      "published": "Tue, 25 Feb 2014 00:10:55 GMT", 
      "summary": "<-- ... --->", 
      "title": "What does the UW CS department gain from barring other UW students from taking its courses?"
    }, 
    {
      "link": "http://www.quora.com/Can-applied-math-students-take-CSE-majors-only-courses/answer/Christopher-J-Su", 
      "published": "Tue, 25 Feb 2014 00:04:33 GMT", 
      "summary": "<div style=\"color: #666666;\">Christopher J. Su added this answer.</div><br /><div id=\"ld_ihbjvp_3370\"><div style=\"font-weight: bold; color: #000000;\"><div class=\"hover_menu hidden hover_menu_wide hover_menu_cards\" id=\"__w2_qIjTQfx_menu\" style=\"display: none;\"><div class=\"hover_menu_nub\"></div><div class=\"hover_menu_contents\" id=\"__w2_qIjTQfx_menu_contents\"> </div></div><a class=\"user\" href=\"http://www.quora.com/Christopher-J-Su\" id=\"__w2_qIjTQfx_link\">Christopher J. Su</a></div><br />I think you might need to fill out a CSE course petition to take a 300+-level CSE course as a non-major: <span class=\"qlink_container\"><a class=\"external_link\" href=\"https://www.cs.washington.edu/prospective_students/undergrad/petition/\" target=\"_blank\">Petition for Non-Majors</a></span>.<br /><br /><a href=\"http://www.quora.com/Can-applied-math-students-take-CSE-majors-only-courses\" style=\"font-weight: bold;\">See question on Quora</a></div>", 
      "title": "Can applied math students take CSE majors only courses?"
    }
  ], 
  "last_updated": "Thu, 24 Jul 2014 05:32:49 GMT", 
  "username": "Christopher-J-Su"
}

GET: /users/<user>/activity/answers

Get the user's latest answers.

Example

Example usage: GET http://quora.christopher.su/users/Christopher-J-Su/activity/answers

Output (excerpt):

{
  "items": [
    {
      "id": "5:48afe1749959ac2b673b1094a13b6cb5#1418975956225507", 
      "link": "http://www.quora.com/I-need-a-summer-internship-but-I-dont-want-to-apply-because-theres-a-90-chance-Ill-get-rejected-What-should-I-do/answer/Christopher-J-Su", 
      "published": "Fri, 19 Dec 2014 07:59:16 GMT", 
      "summary": "<div id=\"ld_ftujiv_1299\"><div style=\"font-weight: bold; color: #000000;\"><div class=\"hover_menu hidden hover_menu_cards hover_menu_wide hover_menu_cards\" id=\"__w2_lHemksQ_menu\" style=\"display: none;\"><div class=\"hover_menu_nub\"></div><div class=\"hover_menu_contents\" id=\"__w2_lHemksQ_menu_contents\"> </div></div><a class=\"user\" href=\"http://www.quora.com/Christopher-J-Su\" id=\"__w2_lHemksQ_link\">Christopher J. Su</a></div><br />Apply, interview, fail, repeat. Keep failing. Eventually, you&#039;ll notice you stop failing as much as you did before. Then, you&#039;ll suddenly start passing interviews. Then, you&#039;ll start getting offers.<br /><br />Don&#039;t get locked up in the mindset that you won&#039;t make it. If you never even try, you&#039;ll never get an internship. Having interviews scheduled will motivate you to study and prepare for them. Doing the interviews themselves is great practice.<br /><br /><a href=\"http://www.quora.com/I-need-a-summer-internship-but-I-dont-want-to-apply-because-theres-a-90-chance-Ill-get-rejected-What-should-I-do\" style=\"font-weight: bold;\">See question on Quora</a></div>", 
      "title": "I need a summer internship, but I don't want to apply because there's a 90% chance I'll get rejected. What should I do?"
    }
  ]
}

GET: /users/<user>/activity/user_follows

Get the user's latest user follows.

Example

Example usage: GET http://quora.christopher.su/users/Christopher-J-Su/activity/user_follows

Output (excerpt):

{
  "items": [
    {
      "id": "4:c219dbf80746802cf733f0cb3d5218c2#1419000196656496", 
      "link": "http://www.quora.com/Inna-Vishik", 
      "published": "Fri, 19 Dec 2014 14:43:16 GMT", 
      "summary": "", 
      "title": "Inna Vishik"
    },
    {
      "id": "4:bd7227ae22f8f8cd9acfcb906ae8f6ea#1418975190093378", 
      "link": "http://www.quora.com/Mira-Zaslove", 
      "published": "Fri, 19 Dec 2014 07:46:30 GMT", 
      "summary": "", 
      "title": "Mira Zaslove"
    }
  ]
}

GET: /users/<user>/activity/want_answers

Get the user's latest followed questions.

Example

Example usage: GET http://quora.christopher.su/users/Christopher-J-Su/activity/want_answers

Output (excerpt):

{
  "items": [
    {
      "id": "1:03fb57d2ccb343bff9bb608c6978f5c7#1418895552348316", 
      "link": "http://www.quora.com/What-is-a-typical-day-like-for-a-software-engineer-at-Google", 
      "published": "Thu, 18 Dec 2014 09:39:12 GMT", 
      "summary": "<div id=\"ld_veqgnk_1856\"><span id=\"ld_veqgnk_1857\">5 Answers</span><br /><br /><a href=\"http://www.quora.com/What-is-a-typical-day-like-for-a-software-engineer-at-Google\" style=\"font-weight: bold;\">See question on Quora</a></div><br />", 
      "title": "What is a typical day like for a software engineer at Google?"
    }
  ]
}

GET: /users/<user>/activity/upvotes

Get the user's latest upvoted answers.

Example

Example usage: GET http://quora.christopher.su/users/Christopher-J-Su/activity/upvotes

Output (excerpt):

{
  "items": [
    {
      "id": "5:cf756de40913266d1c7bb0ff1306a384#1419235600718606", 
      "link": "https://www.quora.com/What-criteria-are-Google-interns-graded-on-for-performance-reviews/answer/Kshitij-Gopal", 
      "published": "Mon, 22 Dec 2014 08:06:40 GMT", 
      "summary": "<div id=\"ld_gurtiz_2329\"><div style=\"font-weight: bold; color: #000000;\"><div class=\"hover_menu hidden hover_menu_cards hover_menu_wide hover_menu_cards\" id=\"__w2_EisD67h_menu\" style=\"display: none;\"><div class=\"hover_menu_nub\"></div><div class=\"hover_menu_contents\" id=\"__w2_EisD67h_menu_contents\"> </div></div><a class=\"user\" href=\"https://www.quora.com/Kshitij-Gopal\" id=\"__w2_EisD67h_link\">Kshitij Gopal</a></div><br />I&#039;m not sure on what basis the earlier answer was given, but as someone who managed interns directly at Google I&#039;ll give this one a crack.<br /><br />Interns are evaluated on a number of parameters, most of which are confidential but rest assured there are a range of performance criteria, parameters that measure initiative, enthusiasm, work ethic and finally Googley-ness. Going above and beyond is expected and will help you in your final evaluation, if you&#039;re an aspiring intern then remember that.<br /><br />Just to clarify the other answer completely - there is nothing random about it and certainly no &quot;lottery&quot; system. I&#039;ve seen and filled the evaluation form, at Google not much is left to luck.<br /><br /><a href=\"https://www.quora.com/What-criteria-are-Google-interns-graded-on-for-performance-reviews\" style=\"font-weight: bold;\">See question on Quora</a></div>", 
      "title": "What criteria are Google interns graded on for performance reviews?"
    }
  ]
}

GET: /users/<user>/activity/review_requests

Get the user's latest review requests.

Example

Example usage: GET http://quora.christopher.su/users/Aaron-Ounn/activity/review_requests

Output (excerpt):

{
  "items": [
    {
      "id": "1:24ee4ef5eff0c53d8247f5a45e83f5e3#1418745295543236", 
      "link": "https://www.quora.com/Reviews-of-Elixir-programming-language", 
      "published": "Tue, 16 Dec 2014 15:54:55 GMT", 
      "summary": "<div id=\"ld_qxesgk_3346\"><span id=\"ld_qxesgk_3347\">0 Answers</span><br /><br /><a href=\"https://www.quora.com/Reviews-of-Elixir-programming-language\" style=\"font-weight: bold;\">Write an answer on Quora</a></div><br />", 
      "title": "Reviews of: Elixir (programming language)"
    }
  ]
}

GET: /questions/<question>

Get statistics on a question.

Example

Example usage: GET http://quora.christopher.su/questions/If-space-is-3-dimensional-can-time-also-be-3-dimensional

Output:

{
  "answer_count": 6, 
  "topics": [
    "Science, Engineering, and Technology", 
    "Science", 
    "Physical Sciences", 
    "Physics", 
    "Time (physics)"
  ], 
  "want_answers": 7
}

GET: /answers/<answer_short_link>

Get an answer by its short link.

Example

Example usage: GET http://quora.christopher.su/answers/6hARL

Output:

{
  "answer": "<div...</div>", 
  "author": "Mayur-P-R-Rohith", 
  "comment_count": 1, 
  "question_link": "http://www.quora.com/Does-Quora-similar-question-...", 
  "upvote_count": 6, 
  "views": 227, 
  "want_answers": 8
}

GET: /answers/<question>/<author>

Get an answer by its question and its author.

Features

Currently implemented

  • User statistics
  • User activity
  • Question statistics
  • Answer statistics

Todo

  • Detailed user information (followers, following, etc.; not just statistics)
  • Unit tests
  • Cache data with memcached

Installation

You will need Python 2. pip is recommended for installing dependencies.

To run the API locally:

$ pip install -r requirements.txt
$ python server.py

Contributing

Feel free to submit a pull request or an issue!
Quora API uses the pyquora package.

You can’t perform that action at this time.