ro.py is an object oriented, asynchronous wrapper for the Roblox Web API (and other Roblox-related APIs) with many new and interesting features.
ro.py allows you to automate much of what you would do on the Roblox website and on other Roblox-related websites.
Update: ro.py rewrite
We are currently working on a complete ro.py rewrite, and as such we are not accepting feature requests until the rewrite branch is on par with the main branch.
If you'd like to give suggestions on ro.py design decisions, you can join the ro.py Discord.
To begin, first import the client, which is the most essential part of ro.py, and initialize it like so:
from ro_py import Client client = Client()
asyncio at the top of your file:
Next, create an async method
main() and run it with asyncio:
async def main(): # keep this empty for the next step! asyncio.get_event_loop().run_until_complete(main())
Next, read the documentation for the Client to grab objects and interact with the API.
If you are looking for a full tutorial on ro.py, check out the new DevForum article!
- httpx (for sending requests)
- iso8601 (for parsing dates)
- signalrcore (for recieving notifications)
- lxml (for parsing documentation, might be made optional soon)
- cachecontrol (for caching requests)
- requests-async (for sending requests, might be updated to a new lib soon)
pytweening (for animations, see below) wxPython (for the "prompts" extension, optional) wxasync (see above)
Prompts Extension Requirements
You'll need to install
pytweening to use the prompts extension. If it is not present, an error will be raised.
We are not responsible for any malicious use of this library.
If you use code from ro.py in your own library, please credit us! We're working our hardest to deliver this library, and crediting us is the best way to help support the project.