Skip to content

Instantly share code, notes, and snippets.

View Xoma163's full-sized avatar
🚳

Andrew Sha Xoma163

🚳
View GitHub Profile
@Xoma163
Xoma163 / VkMessagesDumpConverter.py
Created October 5, 2021 19:12
Simple vk dump messages converter to json format (200k rows about 10 sec)
import json
import os
import time
from datetime import datetime
from joblib import Parallel, cpu_count, delayed
from bs4 import BeautifulSoup
class VkMessagesDumpConverter:
MONTH_TRANSLATOR = {
'янв': 'Jan',
@Xoma163
Xoma163 / YandexMusicIntersection.py
Created December 2, 2022 08:54
Скрипт выводящий таблицу пересечений интересов на основе песен из яндекс музыки. Вертикаль - относительно вас, горизонталь - относительно других
import requests
from bs4 import BeautifulSoup
class User:
BASE_URL = "https://music.yandex.ru/users/yamusic-2022/playlists/"
def __init__(self, name: str, user_id: int = None, login: str = None):
"""
@Xoma163
Xoma163 / like_yandex_song.py
Last active January 30, 2023 05:41
Позволяет лайкнуть песню на Яндекс Музыке, чтобы она была в вашем плейлисте (переход по ссылке даёт 404, т.е. песню убрали из публичного доступа и доступна только тем, кто её добавил себе в плейлист)
import requests
def like_yandex_song(song_id, cookies_yandexuid, cookies_session_id, payload_sign):
url = f"https://music.yandex.ru/api/v2.1/handlers/track/{song_id}/web-user_playlists-playlist-track-main/like/add"
data = {
'sign': payload_sign,
}
cookies = {
'yandexuid': cookies_yandexuid,
@Xoma163
Xoma163 / octoprint_autoconnect.py
Last active May 4, 2024 11:01
Данный скрипт позволяет автоматически подключать 3D принтеры в Octoprint посредством API. Надоело жмать кнопочку. Повесить на кронтаб каждую минуту
class Printer:
def __init__(self, name, api_key, url):
self.name = name
self.octoprint_api_key = api_key
self.headers = {"X-Api-Key": self.octoprint_api_key, "Content-Type": "application/json"}
self.url = url
self.port = None
self.connection_info = self.get_connection_info()
@Xoma163
Xoma163 / mkv_merger.py
Created April 2, 2024 12:54
Скрипт позволяющий смёржить в mkv видео аудиодорожки и субтитры, выбрав при этом приоритетные (для VLC/PLEX)
#!/usr/bin/env python
import os
import re
import subprocess
from os import listdir
from os.path import isfile, join
from typing import Optional
"""
Скрипт позволяет объединить видео mkv, аудиодорожки и субтитры в один mkv контейнер. Берёт все аудиодорожки и субтитры