EpikCord.py - This is an API Wrapper for Discord's API for Python

Overview

EpikCord.py

Welcome to EpikCord.py! This is an API Wrapper for Discord's API for Python! We've decided not to fork discord.py and start completely from scratch for a new, better structuring system!

Why EpikCord.py?

Because Discord.py has been discontinued and is no longer maintained, we've decided to make our own Python API Wrapper for the Discord API. The reason for this is because we want an easier method for you, the developer, to use the API, with great ease.

Why is there literally nothing in here?

Here, we decided to not for Discord.py and to go for an entirely different structure to our code, thus meaning we're not gonna have anywhere to start from. We may include a series on the EpikHost YouTube channel for helping people migrate to our library from Discord.py (not promised).

I want to contribute!

We love contributions that help us, so feel free to! You won't be rewarded for this, but it helps us and we'd be very pleased with any contribution. See Contributing.md for more information.

Where are your docs?

SoonTM

Why doesn't it work?

We plan on launching a 1.0 version which will work, until that comes out you just have to sit and look at the code and predict what functions are gonna come out next.

Comments
  • Tasks

    Tasks

    Description

    Adding tasks to the lib

    The problem

    Having to implement a task loop by yourself

    The solution

    Implement it

    The current solution, if any

    Checklist

    • [x] - You have checked that there is no issue already mentioning this feature, open or closed
    • [x] - Full details of the requested feature have been provided/shown

    Additional context

    enhancement 
    opened by Jerry-py 33
  • [WiP] Start commands.checks and bettering of library

    [WiP] Start commands.checks and bettering of library

    Description

    :D

    Checklist

    • [x] - All code changes have been tested, if any
    • [ ] - The documentation has been updated accordingly for any code changes
    • [x] - This PR fixes #96 an already existing issue
    • [x] - This PR adds a new feature (new functions, methods, classes, parameters, etc.)
    • [ ] - This PR fixes a bug
    • [ ] - This PR is a breaking change (removes/renames functions, parameters etc.)
    • [ ] - This PR is NOT a code change (changes Documentation files, README.md, CONTRIBUTING.md etc.)

    Additional context

    opened by nav-github01001 20
  • Inputting no token will result in no error

    Inputting no token will result in no error

    Summary

    No token added into Client will raise no error

    Reproduction Steps

    I wrote some code and ran it with no token and raises no error

    Minimal Reproducible Code

    -> __main__.py
    from .bot import Bot
    
    if __name__ == "__main__":
        Bot().login()
    
    
    -> bot.py
    from EpikCord import Client, Intents
    
    class Bot(Client):
        def __init__(self, token: str):
            intents = Intents().all
            super().__init__(token, intents)
    
        async def on_ready(self):
            print("Ready")
    

    Expected Results

    Raise an error having no token

    Actual Results

    No error

    Intents

    All - Intents().all

    System Information

    Name: EpikCord.py
    Version: 0.4.11
    Summary: A Modern API wrapper for Discord, Intended for replacement of the now discontinued Discord.py library
    Home-page: https://github.com/EpikCord/EpikCord.py
    Author: EpikCord
    Author-email:
    License: MIT
    Location: c:\users\jerry\appdata\local\programs\python\python310\lib\site-packages
    Requires:
    Required-by:
    

    Checklist

    • [X] This bug was found on the latest version of EpikCord
    • [X] You have checked that there is no issue already mentioning this bug, open or closed
    • [X] Full details of the bug have been provided/shown, including full tracebacks in case of exceptions
    • [X] All bot tokens have been hidden/omitted from any screenshots or code, if any

    Additional Context

    No response

    bug low priority will fix later 
    opened by Jerry-py 14
  • File separation

    File separation

    Description

    File separation

    Checklist

    • [ ] - All code changes have been tested, if any
    • [ ] - The documentation has been updated accordingly for any code changes
    • [ ] - This PR fixes an already existing issue
    • [x] - This PR adds a new feature (new functions, methods, classes, parameters, etc.)
    • [ ] - This PR fixes a bug
    • [ ] - This PR is a breaking change (removes/renames functions, parameters etc.)
    • [ ] - This PR is NOT a code change (changes Documentation files, README.md, CONTRIBUTING.md etc.)

    Additional context

    opened by Jerry-py 13
  • More precise events.

    More precise events.

    Summary

    Some events are affected by a single change, affecting different things.

    The Problem

    So I was making the channel_create event handler, and I thought about how there's VoiceChannels and TextBasedChannels, and how it'd be nice to have a precise event for those. Discord.py had this with their "private_channel_create", which is whenever a DMChannelis created, but then you have channel_create event which is very broad and could cause issues if some nefarious people spam created DMChannels and the code would error, spamming the console.

    The Ideal Solution

    To have separate, precise events for each respectful type of change that could've happened within the broad event.

    The Current Solution

    No response

    Checklist

    • [X] This bug was found on the latest version of EpikCord
    • [X] Full details of the requested feature have been provided/shown

    Additional Context

    No response

    enhancement 
    opened by TheUntraceable 11
  • Async Websockets

    Async Websockets

    We should switch to Asynchronous Websockets with AIOHTTP, but the thing is I don't get how we'll use client.login, maybe that'll run the async version? I'm still baffled on how to do this one.

    bug enhancement help wanted 
    opened by TheUntraceable 11
  • Latency

    Latency

    Description

    This PR adds latency functionality to the library

    Formula = difference between heartbeat and heartbeat_ack, measured in ms for more precision

    Checklist

    • [ ] - All code changes have been tested, if any
    • [ ] - The documentation has been updated accordingly for any code changes
    • [ ] - This PR fixes an already existing issue
    • [x] - This PR adds a new feature (new functions, methods, classes, parameters, etc.)
    • [ ] - This PR fixes a bug
    • [ ] - This PR is a breaking change (removes/renames functions, parameters etc.)
    • [ ] - This PR is NOT a code change (changes Documentation files, README.md, CONTRIBUTING.md etc.)

    Additional context

    opened by nav-github01001 9
  • data.get more stuff & fix bugs (tedious)

    data.get more stuff & fix bugs (tedious)

    Description

    I have finished adding dict.get(KEY) @TheUntraceable

    Checklist

    • [ ] - All code changes have been tested, if any
    • [ ] - The documentation has been updated accordingly for any code changes
    • [x] - This PR fixes an already existing issue #43
    • [ ] - This PR adds a new feature (new functions, methods, classes, parameters, etc.)
    • [x] - This PR fixes a bug
    • [ ] - This PR is a breaking change (removes/renames functions, parameters etc.)
    • [ ] - This PR is NOT a code change (changes Documentation files, README.md, CONTRIBUTING.md etc.)

    Additional context

    opened by nav-github01001 9
  • Dict[KEY] instead of Dict.get()

    Dict[KEY] instead of Dict.get()

    Summary

    I used the incorrect method to get the value of a key from the data dict.

    Reproduction Steps

    Literally anything.

    Minimal Reproducible Code

    Anything.
    

    Expected Results

    No errors to be thrown

    Actual Results

    Errors are thrown

    Intents

    All.

    System Information

    It won't run on anything.

    Checklist

    • [X] This bug was found on the latest version of EpikCord
    • [X] You have checked that there is no issue already mentioning this bug, open or closed
    • [X] Full details of the bug have been provided/shown, including full tracebacks in case of exceptions
    • [X] All bot tokens have been hidden/omitted from any screenshots or code, if any

    Additional Context

    I need to replace all mentions of dict[key] with dict.get(key) to suppress KeyErrors.

    bug help wanted stopping library from progressing high priority 
    opened by TheUntraceable 9
  • Inch more closer to production

    Inch more closer to production

    Description

    Just add some few major and minor improvements like implement :class: StickerItem and improve setup.py

    Checklist

    • [ ] - All code changes have been tested, if any
    • [ ] - The documentation has been updated accordingly for any code changes
    • [ ] - This PR fixes an already existing issue
    • [x] - This PR adds a new feature (new functions, methods, classes, parameters, etc.)
    • [ ] - This PR fixes a bug
    • [x] - This PR is a breaking change (removes/renames functions, parameters etc.)
    • [ ] - This PR is NOT a code change (changes Documentation files, README.md, CONTRIBUTING.md etc.)

    Additional context

    opened by nav-github01001 9
  • Events and More Improvements

    Events and More Improvements

    Description

    ^ Hard Work for @TheUntraceable because he will need to update his PR 🤣

    Checklist

    • [ ] - All code changes have been tested, if any
    • [ ] - The documentation has been updated accordingly for any code changes
    • [ ] - This PR fixes an already existing issue
    • [x] - This PR adds a new feature (new functions, methods, classes, parameters, etc.)
    • [ ] - This PR fixes a bug
    • [ ] - This PR is a breaking change (removes/renames functions, parameters etc.)
    • [ ] - This PR is NOT a code change (changes Documentation files, README.md, CONTRIBUTING.md etc.)

    Additional context

    opened by nav-github01001 8
  • Restart the library

    Restart the library

    Description

    The library is very messy and outdated. It needs a rewrite. It has been a few months since I have actively worked on the library, and so I don't know where exactly I am now. Restarting the library will solve all these issues.

    Checklist

    • [ ] - All code changes have been tested, if any
    • [ ] - The documentation has been updated accordingly for any code changes
    • [ ] - This PR fixes an already existing issue
    • [x] - This PR adds a new feature (new functions, methods, classes, parameters, etc.)
    • [ ] - This PR fixes a bug
    • [x] - This PR is a breaking change (removes/renames functions, parameters etc.)
    • [ ] - This PR is NOT a code change (changes Documentation files, README.md, CONTRIBUTING.md etc.)
    enhancement high priority 
    opened by TheUntraceable 5
  • feat:Finish Channel Events

    feat:Finish Channel Events

    Description

    This PR contributes the following

    1. Adds _channel_update and _channel_delete

    Checklist

    • [ ] - All code changes have been tested, if any
    • [x] - The documentation has been updated accordingly for any code changes
    • [ ] - This PR fixes an already existing issue
    • [x] - This PR adds a new feature (new functions, methods, classes, parameters, etc.)
    • [ ] - This PR fixes a bug
    • [ ] - This PR is a breaking change (removes/renames functions, parameters etc.)
    • [ ] - This PR is NOT a code change (changes Documentation files, README.md, CONTRIBUTING.md etc.)

    Additional context

    opened by nav-github01001 4
  • Presence

    Presence

    The Presence class is meant to be used by users, but it can also be received, and so I need to either make the user use the respective arguments to set the Activity and Status, and then use the Presence class for receiving or make a new class, which seems rather redundant.

    opened by TheUntraceable 0
  • `self` not being inserted into callback for Section Commands.

    `self` not being inserted into callback for Section Commands.

    Summary

    The callback for a command within a section has never received the self parameter.

    Reproduction Steps

    Make a command within a section. Call that command on Discord

    Minimal Reproducible Code

    No response

    Expected Results

    For the command callback to succeed

    Actual Results

    It fails.

    Intents

    No response

    System Information

    Latest

    Checklist

    • [X] This bug was found on the latest version of EpikCord
    • [X] You have checked that there is no issue already mentioning this bug, open or closed
    • [X] Full details of the bug have been provided/shown, including full tracebacks in case of exceptions
    • [X] All bot tokens have been hidden/omitted from any screenshots or code, if any

    Additional Context

    No response

    opened by TheUntraceable 0
  • Id: str

    Id: str

    We should change Id's from strings to integers. This is because it is more of a hassle for developers to do their own stuff with the snowflake. They would have to do (int(snowflake) & 0x3E0000) >> 17, if they wanted to get the Internal Worker Id, rather ugly.

    opened by TheUntraceable 0
  • Introduce unit-testing for basic features

    Introduce unit-testing for basic features

    Summary

    The goal of this feature is to make part of the code-base more reliable using a test suite that validate the behavior or given object/functions

    The Problem

    There is currently no test for any feature of the whole library. This means that there is a high risk of undefined behavior, especially considering #193

    The Ideal Solution

    Partial coverage from unit-testing and integration testing of feature that are not bound to discord API.

    The Current Solution

    No response

    Additional Context

    No response

    enhancement 
    opened by Sigmanificient 0
Releases(0.5.4)
  • 0.5.4(Aug 13, 2022)

    What's Changed

    • use find_spec instead try/except, small changes by @okok7711 in https://github.com/EpikCord/EpikCord.py/pull/185
    • :recycle: Refactor and cleanup by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/186
    • some stuff by @ZenoABC in https://github.com/EpikCord/EpikCord.py/pull/188
    • :recycle: Replaced Flag with std enum.IntFlag custom subclass by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/189
    • Everything is now in it's own individual file.

    New Contributors

    • @okok7711 made their first contribution in https://github.com/EpikCord/EpikCord.py/pull/185

    Full Changelog: https://github.com/EpikCord/EpikCord.py/compare/0.5.3...0.5.4

    Source code(tar.gz)
    Source code(zip)
  • 0.5.3(Jul 30, 2022)

    What's Changed

    • command_error event by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/176
    • Small fixes by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/181

    Full Changelog: https://github.com/EpikCord/EpikCord.py/compare/0.5.2...0.5.3

    Source code(tar.gz)
    Source code(zip)
  • 0.5.2(Jul 14, 2022)

    What's Changed

    • Fixing Checks by @Jerry-py in https://github.com/EpikCord/EpikCord.py/pull/177

    Full Changelog: https://github.com/EpikCord/EpikCord.py/compare/0.5.1...0.5.2

    Source code(tar.gz)
    Source code(zip)
  • 0.5.1(Jul 10, 2022)

  • 0.5.0(Jul 2, 2022)

    What's Changed

    • Fix things by @Jerry-py in https://github.com/EpikCord/EpikCord.py/pull/101
    • Fix useless checklist in feature request template by @Jerry-py in https://github.com/EpikCord/EpikCord.py/pull/103
    • Add more examples by @Jerry-py in https://github.com/EpikCord/EpikCord.py/pull/104
    • Handle flags a bit better by @ZenoABC in https://github.com/EpikCord/EpikCord.py/pull/127
    • [WiP] revamp docs by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/130
    • :recycle: Improving option registration by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/136
    • :recycle: Fixing example Bots intents by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/137
    • :zap: Small improvements by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/138
    • Fix some typehint by @ZenoABC in https://github.com/EpikCord/EpikCord.py/pull/145
    • :recycle: Improved the EvenHandler with defaultdict by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/143
    • :recycle: Rewrote Paginator by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/147
    • :construction_worker: Added black formatter within CI by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/148
    • :recycle: A bunch of small fixes by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/149
    • :sparkles: Adding OpCodes & Status Codes by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/153
    • :bug: Fixed Event decorator by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/161
    • :recycle: More Fixes by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/162
    • Improvements: Bigger PR and we got docstrings! by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/155
    • Latency by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/156
    • :sparkles: Added implementation for DiscordAPIError by @Sigmanificient in https://github.com/EpikCord/EpikCord.py/pull/171

    New Contributors

    • @Sigmanificient made their first contribution in https://github.com/EpikCord/EpikCord.py/pull/136

    Full Changelog: https://github.com/EpikCord/EpikCord.py/compare/0.4.11...0.5.0

    Source code(tar.gz)
    Source code(zip)
  • 0.4.11(Mar 12, 2022)

    What's Changed

    • Add docs 4 installing lib by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/7
    • added preset colors by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/9
    • change params to kwargs instead of dict in embed by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/13
    • Remove iframe tag, add Discord badge by @ImNimboss in https://github.com/EpikCord/EpikCord.py/pull/19
    • Done most Embed Funcs by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/18
    • Add issue templates and pull request templates by @ImNimboss in https://github.com/EpikCord/EpikCord.py/pull/21
    • Create CODE_OF_CONDUCT.md by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/24
    • Fix bugs and get ready for release by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/23
    • Refactor code by @Jerry-py in https://github.com/EpikCord/EpikCord.py/pull/25
    • Make login for bot by @Jerry-py in https://github.com/EpikCord/EpikCord.py/pull/28
    • Inch more closer to production by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/30
    • Add loop cleaner by @Jerry-py in https://github.com/EpikCord/EpikCord.py/pull/29
    • Utility functions by @Jerry-py in https://github.com/EpikCord/EpikCord.py/pull/33
    • Fix grammar and add workflows by @Jerrydotpy in https://github.com/EpikCord/EpikCord.py/pull/41
    • Rename CONTRIBUTING to CONTRIBUTING.md by @ImNimboss in https://github.com/EpikCord/EpikCord.py/pull/38
    • New issue templates by @Jerrydotpy in https://github.com/EpikCord/EpikCord.py/pull/40
    • data.get more stuff & fix bugs (tedious) by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/49
    • Fix typo (codespell checks) by @Jerry-py in https://github.com/EpikCord/EpikCord.py/pull/56
    • Add lightmode, darkmode, blurple_old and blurple_new to the Colour class by @ImNimboss in https://github.com/EpikCord/EpikCord.py/pull/58
    • Add mainpage docs by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/59
    • Bump version to 0.4.9 to adhere to semantic versioning by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/69
    • Fix #67 by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/68
    • Add an example by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/65
    • Implement requirements.py into setup.py by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/64
    • make it more better by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/77
    • add examples + bump version number by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/78
    • Patch 6: I messed up my old pr by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/84
    • Docs improve by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/85
    • Add support for autodoc a.k.a docstrings + add docstrings by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/87
    • Bugfix/docs by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/91
    • fix docstring not deploying (hopefully) by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/92
    • Fix Pyautorelease not woking (maybe) #93 by @nav-github01001 in https://github.com/EpikCord/EpikCord.py/pull/94

    New Contributors

    • @nav-github01001 made their first contribution in https://github.com/EpikCord/EpikCord.py/pull/7
    • @ImNimboss made their first contribution in https://github.com/EpikCord/EpikCord.py/pull/19
    • @Jerry-py made their first contribution in https://github.com/EpikCord/EpikCord.py/pull/25
    • @Jerrydotpy made their first contribution in https://github.com/EpikCord/EpikCord.py/pull/41

    Full Changelog: https://github.com/EpikCord/EpikCord.py/commits/0.4.11

    Source code(tar.gz)
    Source code(zip)
Owner
EpikHost
A very "epik" hosting service!
EpikHost
使用appium进行抖音粉丝的自动化获取

DYfans 使用appium进行抖音粉丝的自动化获取 工具: appium appium inspector Fiddler 夜神模拟器或者安卓手机 mitmdump mitmproxy 推荐使用安卓5.0夜神模拟器 库: appium selenium json 环境: jdk 安卓sdk 安卓

kaba 0 Mar 25, 2022
TonplaceApi - Ton.place api wrapper

tonplaceApi ton.place/tonplaceApi Обертка для ton.place Установка pip install ht

Nickolay Samedov 3 Feb 21, 2022
Twitter-redesign - Twitter Redesign With Django

Twitter Redesign A project that tests Django and React knowledge through a twitt

Mark Jumba 1 Jun 01, 2022
Yet another random discord bot.

YARDB (r!) Yet another fully functional and random discord bot. I might add more features if I'm bored also don't criticize on my code. Commands: 4 Di

kayle 1 Oct 21, 2021
A Simple modular tool to fetch and parse data related to the stock market.

🐒 stonks-o-fetcher A Simple modular tool to fetch and parse data related to the stock market. Getting started For the moment the only source is this

Daniele 23 May 31, 2021
Beyonic API Python official client library simplified examples using Flask, Django and Fast API.

Beyonic API Python official client library simplified examples using Flask, Django and Fast API.

Nowadays we don't have time to listen to each and every song that we come across in a playlist.

Nowadays we don't have time to listen to each and every song that we come across in a playlist. so, this project helps you. we used Spotify API for collecting the dataset information and able to do E

3 Apr 26, 2022
Simple Discord bot which logs several events in your server

logging-bot Simple Discord bot which logs several events in your server, including: Message Edits Message Deletes Role Adds Role Removes Member joins

1 Feb 14, 2022
VideocompBot - This is TG Video Compress BoT. Prouduct By BINARY Tech 💫

VideocompBot - This is TG Video Compress BoT. Prouduct By BINARY Tech 💫

1 Jan 04, 2022
Sends messages to a Discord webhook whenever you make a new commit to your local git repository.

Git-Notif Sends messages to a Discord webhook whenever you make a new commit to your local git repository. Usage Just drop notifier.py into your git h

1 May 29, 2022
A secure and customizable bot for controlling cross-server announcements and interactions within Discord

DiscordBot A secure and customizable bot for controlling cross-server announcements and interactions within Discord. Within the code of the bot, you c

Jacob Dorfmeister 1 Jan 22, 2022
A Discord bot themed around the Swedish heavy metal band Sabaton! (Python)

A Discord bot themed around the Swedish heavy metal band Sabaton! (Python)

Evan Lundberg 1 Nov 29, 2021
Framework for creating and running trading strategies. Blatantly stolen copy of qtpylib to make it work for Indian markets.

_• Kinetick Trade Bot Kinetick is a framework for creating and running trading strategies without worrying about integration with broker and data str

Vinay 41 Dec 31, 2022
Soundcloud Music Downloader

Soundcloud Music Downloader Description This script is able to download music from SoundCloud and set id3tag to the downloaded music. Compatible with

Ronan 2.6k Jan 01, 2023
This is a script to forward forward large number of documents to another telegram channel.

ChannelForward 😇 This is a Script to Forward Large Number of Documents to Another Telegram Channel. If You Try to Forward Very Large Number of Files

Anjana Madushanka 10 Jun 08, 2021
Telegram bot to stream videos in telegram voicechat for both groups and channels

Telegram bot to stream videos in telegram voicechat for both groups and channels. Supports live streams, YouTube videos and telegram media. With record stream support, Schedule streams, and many more

ALBY 9 Feb 20, 2022
This wrapper now has async support, its basically the same except it uses asyncio

This is a python wrapper for my api api_url = "https://api.dhravya.me/" This wrapper now has async support, its basically the same except it uses asyn

Dhravya Shah 5 Mar 10, 2022
Most Powerful Chatbot On Telegram Bot

About Hello, I am Lycia [リュキア], An Intelligent ChatBot. If You Are Feeling Lonely, You can Always Come to me and Chat With Me! How To Host The easiest

RedAura 8 May 26, 2021
Python SDK for 42DI

42di Python SDK Install pip install git+https://github.com/42di/python-sdk import import di #42di import pandas_datareader as pdr Init SDK project =

42DI 2 Nov 03, 2021
Automatically check for free Anmeldung appointments.

Berlin Anmeldung Appointments (Python) This Python script will automatically check for free Anmeldung appointments in Berlin, and find them for you. T

Martín Aberastegue 6 May 19, 2022