This is a simple chat-like program using pub-sub pattern, backed by PostgreSQL's LISTEN/NOTIFY command.
publish message to foo channel from user nickname.
$ python pub.py foo nickname
PUBLISH to channel #foo
| deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse | |
| deb-src http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse | |
| deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse | |
| deb-src http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse | |
| deb http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse | |
| deb-src http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse | |
| deb http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse |
| # Upsert function for pandas to_sql with postgres | |
| # https://stackoverflow.com/questions/1109061/insert-on-duplicate-update-in-postgresql/8702291#8702291 | |
| # https://www.postgresql.org/docs/devel/sql-insert.html#SQL-ON-CONFLICT | |
| import pandas as pd | |
| import sqlalchemy | |
| import uuid | |
| import os | |
| def upsert_df(df: pd.DataFrame, table_name: str, engine: sqlalchemy.engine.Engine): |
| # turn off all wsl instances such as docker-desktop | |
| wsl --shutdownnotepad "$env:USERPROFILE/.wslconfig" | |
| [wsl2] | |
| memory=3GB # Limits VM memory in WSL 2 up to 3GB | |
| processors=4 # Makes the WSL 2 VM use two virtual processors | |
| #credits: https://itnext.io/wsl2-tips-limit-cpu-memory-when-using-docker-c022535faf6f |
| import pandas as pd | |
| import pandas.io.sql as sqlio | |
| import psycopg2 | |
| conn = psycopg2.connect("host='{}' port={} dbname='{}' user={} password={}".format(host, port, dbname, username, pwd)) | |
| sql = "select count(*) from table;" | |
| dat = sqlio.read_sql_query(sql, conn) | |
| conn = None |
| # License: Apache-2.0 | |
| # Copyright: Florian Kromer 2020 | |
| from smb.SMBConnection import SMBConnection | |
| from typing import List, Union | |
| from smb.base import SharedDevice, SharedFile | |
| from tempfile import NamedTemporaryFile | |
| class NasServerClient: |
| ################## Ticks to candles in kiteconnect python #################### | |
| # Author : Arun B | |
| # Reference : http://ezeetrading.in/Articles/Candles_formation_from_tick_data_zerodha.html | |
| # Purpose : Convert ticks to candles by putting ticks in a queue. This redues time wasted in on_ticks function | |
| ################################################################################ | |
| from kiteconnect import KiteTicker | |
| import datetime | |
| from copy import copy | |
| import queue |
| curl --include \ | |
| --no-buffer \ | |
| --header "Connection: Upgrade" \ | |
| --header "Upgrade: websocket" \ | |
| --header "Host: example.com:80" \ | |
| --header "Origin: http://example.com:80" \ | |
| --header "Sec-WebSocket-Key: SGVsbG8sIHdvcmxkIQ==" \ | |
| --header "Sec-WebSocket-Version: 13" \ | |
| http://example.com:80/ |
how to leverage oracle's temping offers
The limits of the free tier say that you can create up to 4 instances.
| import os | |
| import asyncio | |
| import aiohttp # pip install aiohttp | |
| import aiofiles # pip install aiofiles | |
| REPORTS_FOLDER = "reports" | |
| FILES_PATH = os.path.join(REPORTS_FOLDER, "files") | |
| def download_files_from_report(urls): |