Skip to content

Instantly share code, notes, and snippets.

View ultrafunkamsterdam's full-sized avatar

Leon ultrafunkamsterdam

View GitHub Profile
@ultrafunkamsterdam
ultrafunkamsterdam / camelsnake.py
Last active April 20, 2021 16:17
Python convert snake_case to camelCase and camelCase to snake_case
"""
██████╗ █████╗ ███╗ ███╗███████╗██╗ ███████╗███╗ ██╗ █████╗ ██╗ ██╗███████╗
██╔════╝██╔══██╗████╗ ████║██╔════╝██║ ██╔════╝████╗ ██║██╔══██╗██║ ██╔╝██╔════╝
██║ ███████║██╔████╔██║█████╗ ██║ ███████╗██╔██╗ ██║███████║█████╔╝ █████╗
██║ ██╔══██║██║╚██╔╝██║██╔══╝ ██║ ╚════██║██║╚██╗██║██╔══██║██╔═██╗ ██╔══╝
╚██████╗██║ ██║██║ ╚═╝ ██║███████╗███████╗███████║██║ ╚████║██║ ██║██║ ██╗███████╗
╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚══════╝╚══════╝╚═╝ ╚═══╝╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝
github.com/UltrafunkAmsterdam
"""
@ultrafunkamsterdam
ultrafunkamsterdam / PySimpleGui-asyncio-tasks.py
Created March 27, 2020 23:40
PySimpleGui Window loops as tasks in asyncio
import asyncio
import PySimpleGUI as sg
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)
form = sg.FlexForm(
"Everything bagel", auto_size_text=True, default_element_size=(40, 1)
)
@ultrafunkamsterdam
ultrafunkamsterdam / async_mp.py
Created March 4, 2020 15:56
asyncio loop in multiprocessing process
import multiprocessing as mp
import queue
import asyncio
class Process(mp.Process):
def __init__(self, in_queue, out_queue, func, func_args=None, func_kwargs=None):
self.in_queue:mp.Queue = in_queue
@ultrafunkamsterdam
ultrafunkamsterdam / asyncio_multiprocessing_pool.py
Last active February 28, 2020 13:16
python asyncio multiprocessing pool (cancellable)
import asyncio
import multiprocessing
class Pool(object):
def __init__(self, max_workers=3):
self._workers_available = {self._new_pool() for _ in range(max_workers)}
self._workers_busy = set()
self._can_rotate = asyncio.Event()
@ultrafunkamsterdam
ultrafunkamsterdam / scan.js
Created January 30, 2020 23:21
JS localhost portscanner from browser
Promise.all(
[...Array(2 ** 16).keys()].map(function(port) {
fetch(`http://localhost:${port}`)
.then((result) => {
console.log(result)
})
.catch((err) => {
console.log(err)
})
}))
@ultrafunkamsterdam
ultrafunkamsterdam / vincenty.py
Created January 24, 2020 12:52
python vincenty geo distance
#!/usr/bin/env python3
# coding: utf-8
from __future__ import division
from math import atan
from math import atan2
from math import cos
from math import radians
from math import sin
from math import sqrt
@ultrafunkamsterdam
ultrafunkamsterdam / chromedriver_hidden.py
Created November 21, 2019 21:00
Selenium ChromeDriver patch to stay invisible for bot-detection or anti-bot services like distilnetworks.com.
#!/usr/bin/env python3
"""
888 888 d8b
888 888 Y8P
888 888
.d8888b 88888b. 888d888 .d88b. 88888b.d88b. .d88b. .d88888 888d888 888 888 888 .d88b. 888d888
d88P" 888 "88b 888P" d88""88b 888 "888 "88b d8P Y8b d88" 888 888P" 888 888 888 d8P Y8b 888P"
@ultrafunkamsterdam
ultrafunkamsterdam / Monokai.icls
Last active November 21, 2019 17:44
Pycharm Monokai Custom Color Scheme [https://i.imgur.com/Ga3vU7h.png]
<scheme name="Monokai" version="142" parent_scheme="Darcula">
<metaInfo>
<property name="created">2019-11-21T18:29:56</property>
<property name="ide">Python</property>
<property name="ideVersion">2018.3.0.0</property>
<property name="modified">2019-11-21T18:30:12</property>
<property name="originalScheme">_@user_Monokai</property>
</metaInfo>
<colors>
<option name="CARET_COLOR" value="f8f8f0" />
@ultrafunkamsterdam
ultrafunkamsterdam / print_tag_structure.py
Last active November 14, 2019 11:20
Print indented html tag structure from BeautifulSoup tag
"""
Print indented html tag structure from Beautifulsoup tag
example:
>>> soup = bs4.BeautifulSoup(some_html, 'html.parser') # or 'lxml'
>>> make_structure(soup)
out:
<html>
<head>
@ultrafunkamsterdam
ultrafunkamsterdam / patch_chromedriver.py
Last active March 7, 2023 10:43
ChromeDriver binary patch to prevent detection by bot-detection systems like DistilNetworks
#!/usr/bin/env python3
import sys
import io
import os
# USAGE
# from terminal/cmd invoke
# patch_chromedriver path/to/chromedriver