Skip to main content

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

Metadata

Release files for ruqqus-api 0.4.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ruqqus-api 0.4.4
File Size Uploaded
ruqqus-api-0.4.4.tar.gz 5.2 kB Details

Release files / ruqqus-api-0.4.4.tar.gz

Download URL ruqqus-api-0.4.4.tar.gz
Size 5.2 kB
Tags Source
SHA-256 checksum
How to use checksums
e0ec98ec6f6c97e330794db7bd745ce82d68de8e2e9a2d2ee5680b9e5632beb8
BLAKE2b-256 checksum
How to use checksums
a4c44a07a67ca282711c8f9778505a929a1abd0dbb725e82ad7a89816af5a0cb
Upload date
Uploaded using Trusted Publishing?
What is 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

Release history Release notifications | RSS feed

This release

0.4.4 This release

1 release file

0.4.3

1 release file

0.4.2

1 release file

0.4.1

1 release file

0.4.0

1 release file

0.3.6

1 release file

0.3.5

1 release file

0.3.4

1 release file

0.3.3

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.0

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page