Skip to content

Instantly share code, notes, and snippets.

View pavelpatrin's full-sized avatar

Pavel Patrin pavelpatrin

  • Yerevan, Armenia
View GitHub Profile
@pavelpatrin
pavelpatrin / test_states.py
Created July 2, 2017 22:35
Event loop with hands
import select
import socket
import typing
from urllib.parse import urlsplit
class Task:
def __init__(self, url):
self.split = urlsplit(url)
@pavelpatrin
pavelpatrin / test_generators.py
Created July 2, 2017 22:34
Event loop with hands
import select
import socket
from urllib.parse import urlsplit
class Loop:
ACTION_READ = 'read'
ACTION_WRITE = 'write'
ACTION_READY = 'ready'
#!/bin/sh
LOCKFILE="/tmp/script.lock"
LOGFILE="/tmp/script.log"
COMMAND="/usr/bin/php7 /home/rinat/myscript.php"
(
if flock -n 200
then
echo "["$(date)"] Running command $COMMAND" | tee -a $LOGFILE
@pavelpatrin
pavelpatrin / line_profiler_decorator.py
Last active September 6, 2023 14:49
Python line profiler decorator
def profile(func):
from functools import wraps
@wraps(func)
def wrapper(*args, **kwargs):
from line_profiler import LineProfiler
prof = LineProfiler()
try:
return prof(func)(*args, **kwargs)
finally:
@pavelpatrin
pavelpatrin / flatten_wsdl.py
Created May 20, 2015 07:45
Нерабочий вариант функции для схлопывания wsdl-схем
def _get_flatten_wsdl(self, url):
"""
Выполняет загрузку wsdl-схемы и зависимых файлов и объединяет их
в единый файл.
Ускоряет загрузку wsdl-схемы для клиента.
TODO: реализовать.
:type url: unicode