• Stars
    star
    241
  • Rank 166,703 (Top 4 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created over 5 years ago
  • Updated almost 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Google Colaboratory background/task executioner & controller.

colabctl v0.2.1

Task executioner & controller for Google Colaboratory notebooks. Google Colaboratory is a game-changing innovation. It allows anyone to access powerful hardware for machine learning, for free. Unfortunately, it's not possible to run colab notebooks programmatically or otherwise in the background unless you leave your browser running. Colabctl is a sort of shim that solves this problem by using headless Selenium.

BROKEN NOTICE

After realizing a few issues being submitted, I reran the code and saw that there are a few new issues due to Google changing their code. I'm now working to correct them. It shouldn't take too long, depending on what exactly they've done.

TODOs

  • Resolve issues #1 #2 #3 #4
  • Async execution of tasks.
  • Proper module structure for user command install via pip.
  • Better args parsing.
  • Revise & refactor the Seleium code.
  • Proper logging.

Pull requests welcomed.

Usage

First, add your Colaboratory URLs to notebooks.csv.

In colab, go to tools -> keyboard shortcuts and set "Clear all outputs" to CTRL + SHIFT + Q

In colab, go to tools -> keyboard shortcuts and set "Reset all runtimes" to CTRL + SHIFT + k

At the end of your notebook, add: print("forkin"+"me")

Now you're ready:

python colabctl.py <end-string> <sleep-seconds>

Example:

python colabctl.py forkinme 1800

Important!!!

Notice that the example delay is 1,800 seconds (30 minutes). Please DO NOT poll Google Colaboratory frequently. We're very lucky to have these notebooks and even luckier that this ctl is even possible. Please don't push them to block us from doing this.

Thank you

More Repositories

1

VPN-Chain

Bash script for making chained OpenVPN connections.
Shell
81
star
2

TradingView-UDF

TradingView charting library UDF implemented in PHP.
PHP
28
star
3

chrome-gun

Gun SuperPeer as a Chrome app.
JavaScript
7
star
4

Pine-Strategy-Template

Pine script strategy template.
7
star
5

POST-Search-Privacy

Chrome extension automatically replacing insecure GET requests of any search provider with secure/private POST requests.
JavaScript
6
star
6

electron-abi-fix

Shell script that fixes "Module version mismatch. Expected x, got x." errors when starting Electron apps.
Shell
5
star
7

gun-powered

A curated list of projects powered by & materials related to gunDB.
4
star
8

actproxy

Sync & asyncio (Requests & AIOHTTP) proxy rotator + utils for actproxy API & services.
Python
3
star
9

nim-webrtc

Nim WebRTC wrapper of libdatachannel.
Nim
3
star
10

Trifecta

Cross-platform PHP/HTML5/Python apps glued together with Nim.
Nim
2
star
11

gun-native

Gun decentralized graph database as a native library.
Python
2
star
12

ulidia

ULID for postgres in plsql
PLpgSQL
1
star
13

veramount

Auto-mount Veracrypt volumes using keyfiles.
Nim
1
star
14

Gunion

In-browser onion router over webrtc using Gun
1
star
15

pygun

GUN (GunDB) transpiled to Python
1
star
16

speed-profiler

Accurate speed profiler for Python code using perf_counter.
Python
1
star
17

traversy

Fast data traversal & manipulation tools for Python.
Python
1
star
18

LucIDE

Open-source HTML5 WYSIWYG editor & debugger with functionality similar to Adobe Dreamweaver.
1
star
19

expectations

Asynchronous expectations (Jobs/tasks) for future events.
Python
1
star
20

marketnet

Dataset consisting of markets. Time-series, studies, news, and other relevant metrics.
1
star
21

datafunc

Python package of various functions for dict, list, and other data structures.
Python
1
star
22

Whonix-Packer

Whonix via Vagrant, DigitalOcean, Docker, etc. via Packer
HCL
1
star
23

BLAKE2

BLAKE2 hashing algorithm library for the Nim programming language.
Nim
1
star
24

supabase_py_async

Python
1
star