Free & open source API service for obtaining information about +9600 universities worldwide.

Overview

Universities is free & open source API service. 🎒

Features 🚀

  • Python FastAPI backend. 🔨
  • SQLAlchemy - models 📊
  • Asynchronous - Thanks to Uvicorn Universities API comes with a incredibly fast ASGI server, 🚀
  • Large database - Supports over +140 countries +9600 Universities 📡
  • Documentation - Have an automatic API documentation web user interface thanks to FastAPI
  • Open source - Everything from the code base is opensource and free to use under a permissive MIT license.

Try it online with the Documentation now!

How to use & query parameters 💡

You can search by:

  • Country /search?country=India or /search?country=United+States
  • Name /search?name=harvard
  • Alpha_two_code /search?alpha_two_code=FR
  • Domain /search?domain=uni-muenchen.de

Multiple querying & Auto completion

  • Name and Country /search?country=Brazil&name=Centro
  • Name and Alpha_two_code /search?name=oxford&alpha_two_code=gb

Example Response

{
    "name": "Ludwig-Maximilians-Universität München",
    "alpha_two_code": "DE",
    "country": "Germany",
    "web_pages": [
      "http://www.uni-muenchen.de/"
    ],
    "domains": [
      "uni-muenchen.de"
    ],
    "state_province": null
}

For Installation 📌

git clone https://github.com/ycd/universities.git
cd universities
virtulenv env
source env/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload

License

This project is licensed under the terms of the MIT license.

You might also like...
A free and open-source SMS/Call bombing application
A free and open-source SMS/Call bombing application

TBOMB V0.1 A free and open-source SMS/Call bombing application NOTE: For Termux To use the bomber type the following commands in Termux: pkg install g

Free and Open Source Group Voice chat music player for telegram ❤️ with button support youtube playback support
Free and Open Source Group Voice chat music player for telegram ❤️ with button support youtube playback support

Free and Open Source Group Voice chat music player for telegram ❤️ with button support youtube playback support

WallAlley.bot is an open source and free to use financial discord bot originaly build for WallAlley server's community

WallAlley.bot About WallAlley.bot is an open source and free to use financial discord bot originaly build for WallAlley server's community. All data a

This is a Python bot, which automates logging in, purchasing and planting the seeds. Open source bot and completely free.
This is a Python bot, which automates logging in, purchasing and planting the seeds. Open source bot and completely free.

🌻 Sunflower Land Bot 🌻 ⚠️ Warning I am not responsible for any penalties incurred by those who use the bot, use it at your own risk. This BOT is com

alpaca-trade-api-python is a python library for the Alpaca Commission Free Trading API.

alpaca-trade-api-python is a python library for the Alpaca Commission Free Trading API. It allows rapid trading algo development easily, with support for both REST and streaming data interfaces

🚧 finCLI's own News API. No more limited API calls. Unlimited credible and latest information on BTC, Ethereum, Indian and Global Finance.
🚧 finCLI's own News API. No more limited API calls. Unlimited credible and latest information on BTC, Ethereum, Indian and Global Finance.

🚧 finCLI's own News API. No more limited API calls. Unlimited credible and latest information on BTC, Ethereum, Indian and Global Finance.

:globe_with_meridians: A Python wrapper for the Geocodio geolocation service API

Py-Geocodio Python wrapper for Geocodio geocoding API. Full documentation on Read the Docs. If you are upgrading from a version prior to 0.2.0 please

Python client for Toyota North America service API

toyota-na Python client for Toyota North America service API Install pip install toyota-na[qt] [qt] is required for generating authorization code. Us

An API wrapper for the file.io web service.

🗃️ File.io An API wrapper for the file.io web service. Install $ pip3 install fileio or

Comments
  • Suggest to loosen the dependency on databases

    Suggest to loosen the dependency on databases

    Hi, your project universities requires "databases==0.3.2" in its dependency. After analyzing the source code, we found that some other versions of databases can also be suitable without affecting your project, i.e., databases 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.2.6, 0.3.0, 0.3.1. Therefore, we suggest to loosen the dependency on databases from "databases==0.3.2" to "databases>=0.2.2,<=0.3.2" to avoid any possible conflict for importing more packages or for downstream projects that may use universities.

    May I pull a request to loosen the dependency on databases?

    By the way, could you please tell us whether such dependency analysis may be potentially helpful for maintaining dependencies easier during your development?



    For your reference, here are details in our analysis.

    Your project universities(commit id: 8d77973ea5e5d6e077329b29ffdb798ab6c1f9ff) directly uses 1 APIs from package databases.

    databases.core.Database.__init__
    
    

    From which, 6 functions are then indirectly called, including 3 databases's internal APIs and 3 outsider APIs, as follows (neglecting some repeated function occurrences).

    [/ycd/universities]
    +--databases.core.Database.__init__
    |      +--databases.core.DatabaseURL.__init__
    |      +--databases.importer.import_from_string
    |      |      +--databases.importer.ImportFromStringError.__init__
    |      |      +--importlib.import_module
    |      +--aiocontextvars.ContextVar
    |      +--contextvars.ContextVar
    

    We scan databases's versions among [0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.2.6, 0.3.0, 0.3.1] and 0.3.2, the changing functions (diffs being listed below) have none intersection with any function or API we mentioned above (either directly or indirectly called by this project).

    diff: 0.3.2(original) 0.2.2
    ['databases.backends.postgres.Record.__iter__', 'databases.backends.aiopg.AiopgConnection.transaction', 'databases.core.DatabaseURL.scheme', 'databases.backends.postgres.PostgresBackend._get_dialect', 'databases.core.DatabaseURL.database', 'databases.backends.aiopg.AiopgTransaction.rollback', 'databases.backends.aiopg.AiopgConnection', 'databases.backends.aiopg.AiopgTransaction', 'databases.core.DatabaseURL.replace', 'databases.core.Connection', 'databases.backends.aiopg.AiopgBackend.connect', 'databases.core.Database.force_rollback', 'databases.core.DatabaseURL.__repr__', 'databases.core.Database.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_all', 'databases.backends.aiopg.AiopgConnection._compile', 'databases.backends.aiopg.CompilationContext.__init__', 'databases.core.Connection.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_one', 'databases.backends.aiopg.AiopgConnection.__init__', 'databases.backends.aiopg.CompilationContext', 'databases.backends.postgres.PostgresConnection._compile', 'databases.backends.sqlite.SQLiteConnection', 'databases.backends.aiopg.AiopgConnection.release', 'databases.backends.postgres.PostgresConnection', 'databases.backends.sqlite.SQLiteBackend', 'databases.backends.postgres.Record.__len__', 'databases.core.Connection.__init__', 'databases.backends.aiopg.AiopgBackend', 'databases.core.DatabaseURL', 'databases.backends.aiopg.AiopgBackend.__init__', 'databases.backends.aiopg.AiopgTransaction.__init__', 'databases.backends.aiopg.AiopgBackend._get_connection_kwargs', 'databases.backends.aiopg.AiopgBackend.disconnect', 'databases.core.Database', 'databases.backends.aiopg.AiopgConnection.execute_many', 'databases.backends.postgres.Record.values', 'databases.backends.aiopg.AiopgConnection.execute', 'databases.core.Transaction', 'databases.backends.aiopg.AiopgConnection.iterate', 'databases.backends.aiopg.AiopgTransaction.start', 'databases.core.DatabaseURL.obscure_password', 'databases.backends.aiopg.AiopgConnection.acquire', 'databases.core.Transaction.__init__', 'databases.backends.aiopg.AiopgConnection.raw_connection', 'databases.backends.aiopg.AiopgBackend._get_dialect', 'databases.backends.postgres.Record', 'databases.backends.aiopg.AiopgBackend.connection', 'databases.backends.mysql.MySQLConnection', 'databases.backends.aiopg.AiopgTransaction.commit', 'databases.backends.mysql.MySQLBackend', 'databases.backends.postgres.PostgresBackend']
    
    diff: 0.3.2(original) 0.2.3
    ['databases.backends.postgres.Record.__iter__', 'databases.backends.aiopg.AiopgConnection.transaction', 'databases.core.DatabaseURL.scheme', 'databases.core.DatabaseURL.database', 'databases.backends.aiopg.AiopgTransaction.rollback', 'databases.backends.aiopg.AiopgConnection', 'databases.backends.aiopg.AiopgTransaction', 'databases.core.DatabaseURL.replace', 'databases.core.Connection', 'databases.backends.aiopg.AiopgBackend.connect', 'databases.core.Database.force_rollback', 'databases.core.DatabaseURL.__repr__', 'databases.core.Database.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_all', 'databases.backends.aiopg.AiopgConnection._compile', 'databases.backends.aiopg.CompilationContext.__init__', 'databases.core.Connection.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_one', 'databases.backends.aiopg.AiopgConnection.__init__', 'databases.backends.aiopg.CompilationContext', 'databases.backends.postgres.PostgresConnection._compile', 'databases.backends.sqlite.SQLiteConnection', 'databases.backends.aiopg.AiopgConnection.release', 'databases.backends.postgres.PostgresConnection', 'databases.backends.postgres.Record.__len__', 'databases.backends.aiopg.AiopgBackend', 'databases.core.DatabaseURL', 'databases.backends.aiopg.AiopgBackend.__init__', 'databases.backends.aiopg.AiopgTransaction.__init__', 'databases.backends.aiopg.AiopgBackend._get_connection_kwargs', 'databases.backends.aiopg.AiopgBackend.disconnect', 'databases.core.Database', 'databases.backends.aiopg.AiopgConnection.execute_many', 'databases.backends.postgres.Record.values', 'databases.backends.aiopg.AiopgConnection.execute', 'databases.core.Transaction', 'databases.backends.aiopg.AiopgConnection.iterate', 'databases.backends.aiopg.AiopgTransaction.start', 'databases.core.DatabaseURL.obscure_password', 'databases.backends.aiopg.AiopgConnection.acquire', 'databases.core.Transaction.__init__', 'databases.backends.aiopg.AiopgConnection.raw_connection', 'databases.backends.aiopg.AiopgBackend._get_dialect', 'databases.backends.postgres.Record', 'databases.backends.aiopg.AiopgBackend.connection', 'databases.backends.mysql.MySQLConnection', 'databases.backends.aiopg.AiopgTransaction.commit']
    
    diff: 0.3.2(original) 0.2.4
    ['databases.backends.postgres.Record.__iter__', 'databases.backends.aiopg.AiopgConnection.transaction', 'databases.core.DatabaseURL.scheme', 'databases.backends.aiopg.AiopgTransaction.rollback', 'databases.backends.aiopg.AiopgConnection', 'databases.backends.aiopg.AiopgTransaction', 'databases.core.DatabaseURL.replace', 'databases.core.Connection', 'databases.backends.aiopg.AiopgBackend.connect', 'databases.core.Database.force_rollback', 'databases.core.DatabaseURL.__repr__', 'databases.core.Database.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_all', 'databases.backends.aiopg.AiopgConnection._compile', 'databases.backends.aiopg.CompilationContext.__init__', 'databases.core.Connection.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_one', 'databases.backends.aiopg.AiopgConnection.__init__', 'databases.backends.aiopg.CompilationContext', 'databases.backends.postgres.PostgresConnection._compile', 'databases.backends.sqlite.SQLiteConnection', 'databases.backends.aiopg.AiopgConnection.release', 'databases.backends.postgres.PostgresConnection', 'databases.backends.postgres.Record.__len__', 'databases.backends.aiopg.AiopgBackend', 'databases.core.DatabaseURL', 'databases.backends.aiopg.AiopgBackend.__init__', 'databases.backends.aiopg.AiopgTransaction.__init__', 'databases.backends.aiopg.AiopgBackend._get_connection_kwargs', 'databases.backends.aiopg.AiopgBackend.disconnect', 'databases.core.Database', 'databases.backends.aiopg.AiopgConnection.execute_many', 'databases.backends.postgres.Record.values', 'databases.backends.aiopg.AiopgConnection.execute', 'databases.core.Transaction', 'databases.backends.aiopg.AiopgConnection.iterate', 'databases.backends.aiopg.AiopgTransaction.start', 'databases.core.DatabaseURL.obscure_password', 'databases.backends.aiopg.AiopgConnection.acquire', 'databases.core.Transaction.__init__', 'databases.backends.aiopg.AiopgConnection.raw_connection', 'databases.backends.aiopg.AiopgBackend._get_dialect', 'databases.backends.postgres.Record', 'databases.backends.aiopg.AiopgBackend.connection', 'databases.backends.mysql.MySQLConnection', 'databases.backends.aiopg.AiopgTransaction.commit']
    
    diff: 0.3.2(original) 0.2.5
    ['databases.core.DatabaseURL.scheme', 'databases.backends.aiopg.AiopgConnection.transaction', 'databases.backends.aiopg.AiopgTransaction.rollback', 'databases.backends.aiopg.AiopgConnection', 'databases.backends.aiopg.AiopgTransaction', 'databases.core.DatabaseURL.replace', 'databases.core.Connection', 'databases.backends.aiopg.AiopgBackend.connect', 'databases.core.Database.force_rollback', 'databases.core.DatabaseURL.__repr__', 'databases.core.Database.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_all', 'databases.backends.aiopg.AiopgConnection._compile', 'databases.backends.aiopg.CompilationContext.__init__', 'databases.core.Connection.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_one', 'databases.backends.aiopg.AiopgConnection.__init__', 'databases.backends.aiopg.CompilationContext', 'databases.backends.postgres.PostgresConnection._compile', 'databases.backends.sqlite.SQLiteConnection', 'databases.backends.aiopg.AiopgConnection.release', 'databases.backends.postgres.PostgresConnection', 'databases.backends.aiopg.AiopgBackend', 'databases.core.DatabaseURL', 'databases.backends.aiopg.AiopgBackend.__init__', 'databases.backends.aiopg.AiopgTransaction.__init__', 'databases.backends.aiopg.AiopgBackend._get_connection_kwargs', 'databases.backends.aiopg.AiopgBackend.disconnect', 'databases.core.Database', 'databases.backends.aiopg.AiopgConnection.execute_many', 'databases.backends.postgres.Record.values', 'databases.backends.aiopg.AiopgConnection.execute', 'databases.core.Transaction', 'databases.backends.aiopg.AiopgConnection.iterate', 'databases.backends.aiopg.AiopgTransaction.start', 'databases.core.DatabaseURL.obscure_password', 'databases.backends.aiopg.AiopgConnection.acquire', 'databases.core.Transaction.__init__', 'databases.backends.aiopg.AiopgConnection.raw_connection', 'databases.backends.aiopg.AiopgBackend._get_dialect', 'databases.backends.postgres.Record', 'databases.backends.aiopg.AiopgBackend.connection', 'databases.backends.mysql.MySQLConnection', 'databases.backends.aiopg.AiopgTransaction.commit']
    
    diff: 0.3.2(original) 0.2.6
    ['databases.core.DatabaseURL.scheme', 'databases.backends.aiopg.AiopgConnection.transaction', 'databases.backends.aiopg.AiopgTransaction.rollback', 'databases.backends.aiopg.AiopgConnection', 'databases.backends.aiopg.AiopgTransaction', 'databases.core.DatabaseURL.replace', 'databases.core.Connection', 'databases.backends.aiopg.AiopgBackend.connect', 'databases.core.Database.force_rollback', 'databases.core.Database.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_all', 'databases.backends.aiopg.AiopgConnection._compile', 'databases.backends.aiopg.CompilationContext.__init__', 'databases.core.Connection.transaction', 'databases.backends.aiopg.AiopgConnection.fetch_one', 'databases.backends.aiopg.AiopgConnection.__init__', 'databases.backends.aiopg.CompilationContext', 'databases.backends.sqlite.SQLiteConnection', 'databases.backends.aiopg.AiopgConnection.release', 'databases.backends.aiopg.AiopgBackend', 'databases.core.DatabaseURL', 'databases.backends.aiopg.AiopgBackend.__init__', 'databases.backends.aiopg.AiopgTransaction.__init__', 'databases.backends.aiopg.AiopgBackend._get_connection_kwargs', 'databases.backends.aiopg.AiopgBackend.disconnect', 'databases.core.Database', 'databases.backends.aiopg.AiopgConnection.execute_many', 'databases.backends.postgres.Record.values', 'databases.backends.aiopg.AiopgConnection.execute', 'databases.core.Transaction', 'databases.backends.aiopg.AiopgConnection.iterate', 'databases.backends.aiopg.AiopgTransaction.start', 'databases.backends.aiopg.AiopgConnection.acquire', 'databases.core.Transaction.__init__', 'databases.backends.aiopg.AiopgConnection.raw_connection', 'databases.backends.aiopg.AiopgBackend._get_dialect', 'databases.backends.postgres.Record', 'databases.backends.aiopg.AiopgBackend.connection', 'databases.backends.mysql.MySQLConnection', 'databases.backends.aiopg.AiopgTransaction.commit']
    
    diff: 0.3.2(original) 0.3.0
    ['databases.backends.postgres.Record.values', 'databases.core.Transaction', 'databases.core.Database.transaction', 'databases.core.Transaction.__init__', 'databases.core.DatabaseURL', 'databases.backends.postgres.Record', 'databases.core.Connection.transaction', 'databases.core.Database', 'databases.core.DatabaseURL.replace', 'databases.core.Connection']
    
    diff: 0.3.2(original) 0.3.1
    ['databases.backends.postgres.Record.values', 'databases.core.DatabaseURL', 'databases.backends.postgres.Record', 'databases.core.DatabaseURL.replace', 'databases.core.Connection']
    
    

    As for other packages, the APIs of @outside_package_name are called by databases in the call graph and the dependencies on these packages also stay the same in our suggested versions, thus avoiding any outside conflict.

    Therefore, we believe that it is quite safe to loose your dependency on databases from "databases==0.3.2" to "databases>=0.2.2,<=0.3.2". This will improve the applicability of universities and reduce the possibility of any further dependency conflict with other projects/packages.

    opened by Agnes-U 0
  • Bump fastapi from 0.60.2 to 0.65.2

    Bump fastapi from 0.60.2 to 0.65.2

    Bumps fastapi from 0.60.2 to 0.65.2.

    Release notes

    Sourced from fastapi's releases.

    0.65.2

    Security fixes

    This change fixes a CSRF security vulnerability when using cookies for authentication in path operations with JSON payloads sent by browsers.

    In versions lower than 0.65.2, FastAPI would try to read the request payload as JSON even if the content-type header sent was not set to application/json or a compatible JSON media type (e.g. application/geo+json).

    So, a request with a content type of text/plain containing JSON data would be accepted and the JSON data would be extracted.

    But requests with content type text/plain are exempt from CORS preflights, for being considered Simple requests. So, the browser would execute them right away including cookies, and the text content could be a JSON string that would be parsed and accepted by the FastAPI application.

    See CVE-2021-32677 for more details.

    Thanks to Dima Boger for the security report! 🙇🔒

    Internal

    0.65.1

    Security fixes

    0.65.0

    Breaking Changes - Upgrade

    • ⬆️ Upgrade Starlette to 0.14.2, including internal UJSONResponse migrated from Starlette. This includes several bug fixes and features from Starlette. PR #2335 by @​hanneskuettner.

    Translations

    Internal

    0.64.0

    Features

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
Releases(0.1.0)
SC4.0 - BEST EXPERIENCE · HEX EDITOR · Discord Nuker · Plugin Adder · Cheat Engine

smilecreator4 This site is for people who want to hack or want to learn it! Furthermore, this program does not work without turning off Antivirus or W

1 Jan 04, 2022
This project is a basic login system in terminal for Discord

Welcome to Discord Login System(Terminal) 👋 This project is a basic login system in terminal for Discord Author 👤 arukovic Github: @SONIC-CODEZ Show

SONIC-CODEZ 2 Feb 11, 2022
The program for obtaining a horoscope in Python using API from rapidapi.com site.

Python horoscope The program allows you to get a horoscope for your zodiac sign and immediately translate it into almost any language. Step 1 The firs

Architect 0 Dec 25, 2021
Wallpaper API from wallpaperscraft.com

wallpaper-api Wallpaper API from https://wallpaperscraft.com for API documentation see https://maajid-wallpaper-api.deta.dev/docs How to Run first, cl

Athallah Muhammad Maajid 2 Apr 06, 2022
Diablo II Resurrected Diablo Clone Running Room Mgr

d2rdc Diablo II Resurrected Diablo Clone Running Room Mgr Install Dependencies pip install fastapi pip install uvicorn Running uvicorn init:app INFO:

1 Dec 03, 2021
Ini adalah UserBot Telegram dengan banyak modul keren. Ditulis dengan Python dengan Telethon dan Py-Tgcalls.

Okaeri-Userbot Okaeri-Userbot = userbot telegram modular yang berjalan di python3 dengan database sqlalchemy. Disclaimer Saya tidak bertanggung jawab

Wahyu 1 Dec 15, 2021
A quick and dirty script to scan the network, find default credentials on services and post a message to a Slack channel with the results.

A quick and dirty script to scan the network, find default credentials on services and post a message to a Slack channel with the results.

Security Weekly 11 Jun 03, 2022
Unofficial instagram API, give you access to ALL instagram features (like, follow, upload photo and video and etc)! Write on python.

Instagram-API-python Unofficial Instagram API to give you access to ALL Instagram features (like, follow, upload photo and video, etc)! Written in Pyt

Vladimir Bezrukov 1 Nov 19, 2021
wrapper for facebook messenger

pyfacebook pyfacebook library for python. Requirements common Help Got a question? File a GitHub issue. Contributing Bug Reports & Feature Requests Pl

Luis Mayta 3 Nov 12, 2021
A Python wrapper around the OpenWeatherMap web API

PyOWM A Python wrapper around OpenWeatherMap web APIs What is it? PyOWM is a client Python wrapper library for OpenWeatherMap (OWM) web APIs. It allow

Claudio Sparpaglione 740 Dec 18, 2022
A Discord Bot - has a few commands. Built using python - Discord.py - RIP.

Discord_Bot A Discord Bot has been built here. It is capable of running a few commands. The below present screenshot should suffice in terms of explai

Manab Kumar Biswas 1 May 22, 2022
Automation for grabbing keys from a Linux host. Useful during red team exercises to quickly help assess what access to a Linux host can lead to.

keygrabber Automation for grabbing keys from a Linux host. This can be helpful during red team exercises when you gain access to a Linux host and want

Cedric Owens 14 Sep 27, 2022
My beancount practice as a template

my-beancount-template 个人 Beancount 方案的模板仓库 相关博客 复式记账指北(一):What and Why? 复式记账指北(二):做账方法论 复式记账指北(三):如何打造不半途而废的记账方案 配置 详细配置请参考博客三。必须修改的配置有: Bot功能:data/be

KAAAsS 29 Nov 29, 2022
A GUI Weather Application written with Python

weather-box - A GUI Weather Application written with Python Made with ❤️ by Suresh Mishra

Suresh Mishra 2 Dec 18, 2021
A small python script which runs a speedtest using speedtest.net and inserts it into a Google Docs Spreadsheet.

speedtest-google-sheets This is a small python script which runs a speedtest using speedtest.net and inserts it into a Google Docs Spreadsheet. Setup

marie 2 Feb 10, 2022
Discord ToolBox is a discord bot developed by DJD320 created for the purpose of having some convenient tools in the form of a single bot.

Discord ToolBox Discord ToolBox is a discord bot developed by DJD320 created for the purpose of having some convenient tools in the form of a single b

3 Aug 07, 2021
A Python wrapper around the Pushbullet API to send different types of push notifications to your phone or/and computer.

pushbullet-python A Python wrapper around the Pushbullet API to send different types of push notifications to your phone or/and computer. Installation

Janu Lingeswaran 1 Jan 14, 2022
DoriBot -Discord Chat Bot

DoriBot -Discord Chat Bot Please do not use these source files for commercial use. Be sure to mark the source. 이제 더이상의 메이저 업데이트는 없습니다. 마이너 업데이트들은 존재합니

queenanna1999 0 Mar 30, 2022
A self hosted slack bot to conduct standups & generate reports.

StandupMonkey A self hosted slack bot to conduct standups & generate reports. Report Bug · Request Feature Installation Install already hosted bot (Us

Muhammad Haseeb 69 Jan 01, 2023
A Next-Gen modular Python3 Telegram-Bot with Anime Theme to it.

Hsea Robot A modular Telegram Python bot running on python3 with a sqlalchemy database and an entirely themed persona to make Cutiepii suitable for An

Wahyusaputra 1 Dec 29, 2021