Unofficial Ruqqus API Wrapper
Project description
ruqqus-api
This is a shitty, patched-together, unoffical API for the website ruqqus.com. This library uses 3 "different" apis. Create a RuqqusAPI object like so:
from ruqqus import RuqqusAPI
ruqqus = RuqqusAPI("username", "password")
If the login is a success, you shouldn't see any message. I'm using requests.Session()
to save cookies and stuff, so thats accessable at ruqqus.session
if you wanna mess around. Technically the Official v1 api methods don't need authentication, and neither do some other functons.
Official v1
This uses their official v1 json api. All of these (very limited) functions work.
- guild(boardname) - returns json info about the specified board
- user(username) - returns json info about the specified user
- post(pid) - returns json info about the specified post referred to by its id (eg: "wmi")
- comment(cid) - returns json info about specified comment by id
Unofficial v1
These were written from me studying the ruqqus source code. As of now, none of them work, all returning server errors. The only reason i called them unofficial v1 was because the request url begins with /api/v1 and they use the @api wrapper.
- post_pid_comment_cid(pid, cid)
- delete_comment(cid)
- board_listing(boardname)
- user_listing(username)
unofficial
A lot of these routes begin with /api, some dont. I think they all mostly work with various levels of success.
- feeds_public(sort="hot") - returns atoma listing (no clue what this is, but it works). seems to work only the first time, probably because its somewhat RSS-like
- api_comment(submission, parent_fullname, body) - I haven't gotten this to work, mainly because in the source code it mentions it requires a verified form value or whatever, also because i dunno what submission and parent_fullname refer to
- board_available(name) - checks if boardname is available. works every time, 80% of the time
- subscribe_board(boardname) and unsubscribe_board(boardname) - you can guess what these do. they work
- name_available(username) - checks if username is available. i think this works when the name is not available?
- follow_user(username) and unfollow_user(username) - havent tested this but it probably works
- agree_tos - agrees to the terms of service, presumably
- user_profile_pic(username) - you can also get this info through the official api v1
user
function - vote_post(post_id, x="1") and vote_comment(comment_id, x="1") - these dont work, idk why, it seems like x should be either -1. 0, or 1
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ruqqus-api-0.4.4.tar.gz
.
File metadata
- Download URL: ruqqus-api-0.4.4.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.8.0 tqdm/4.46.1 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0ec98ec6f6c97e330794db7bd745ce82d68de8e2e9a2d2ee5680b9e5632beb8 |
|
MD5 | c8a9a68a2fdcb456671ac201525a970b |
|
BLAKE2b-256 | a4c44a07a67ca282711c8f9778505a929a1abd0dbb725e82ad7a89816af5a0cb |