Skip to content

Instantly share code, notes, and snippets.

@henryjfry
henryjfry / TECHNICS_SL-PG570A.IRPLUS
Created August 22, 2025 10:07
convert_lirc_to_irplus.py
<?xml version='1.0' encoding='utf-8'?>
<irplus>
<device manufacturer="TECHNICS" model="SL-PG570A" columns="4" format="WINLIRC_RAW">
<button label="KEY_POWER" labelSize="25.0" span="4">3678 1563 555 314 555 1197 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 1197 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 1197 555 314 555 1197 555 314 555 1197 555 314 555 1197 555 314 555 314 555 314 555 314 555 1197 555 314 555 1197 555 1197 555 1197 555 1197 555 314 555 314 555 1197 555 1197 555 1197 555 314 555 1197 555 314 555 314 555 1197 536 74550</button>
<button label="KEY_VOLUMEUP" labelSize="25.0" span="4">3678 1563 555 314 555 1197 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 1197 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 1197 555 314 555 1197 555 314 555 1197 555 314 555 1197 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 314 555 1197 555 314 555 314 555 314 5
def get_imdb_list_ids_api(list_str=None):
import requests, json
url = "https://api.graphql.imdb.com/"
headers = {
"Content-Type": "application/json",
"User-Agent": "Mozilla/5.0",
"x-imdb-client-name": "imdb-web-next"
}
base_title_card = """
@henryjfry
henryjfry / imdb_video_list.py
Last active August 11, 2025 09:23
IDMB trailer lookup
import json
import requests
import time
def get_imdb_videos(imdb_id):
import re, requests
API_URL = "https://graphql.prod.api.imdb.a2z.com/"
HEADERS = {
'Referer': 'https://www.imdb.com/',
'Origin': 'https://www.imdb.com',
@henryjfry
henryjfry / lastfm_python_web_auth.py
Created July 10, 2024 09:39
LASTFM Python Scrobble_WEB_AUTH
import requests
import hashlib
import time
import webbrowser
# Replace with your Last.fm API credentials
API_KEY = 'API_KEY'
API_SECRET = 'API_SECRET'
PASSWORD = 'PASSWORD'
USERNAME = 'USERNAME'
@henryjfry
henryjfry / lastfm_python.py
Created July 10, 2024 09:38
LASTFM Python Scrobble_USERNAME_PASSWORD
import requests
import hashlib
import time
# Replace with your Last.fm API credentials
API_KEY = 'API_KEY'
API_SECRET = 'API_SECRET'
USERNAME = 'username'
PASSWORD = 'password'
@henryjfry
henryjfry / subs_file_hash_size.py
Last active February 4, 2024 14:17
opensubtitles.org - HashFile = filehash = filesize + 64bit sum of the first and last 64k of the file
import struct, os
__64k = 65536
__longlong_format_char = 'q'
__byte_size = struct.calcsize(__longlong_format_char)
def temp_file():
import tempfile
file = tempfile.NamedTemporaryFile()
filename = file.name
return filename
@henryjfry
henryjfry / subs_file_hash.py
Created January 11, 2024 10:01
opensubtitles.org - HashFile = filehash = filesize + 64bit sum of the first and last 64k of the file
import struct, os
import urllib
__64k = 65536
__longlong_format_char = 'q'
__byte_size = struct.calcsize(__longlong_format_char)
def temp_file():
import tempfile
file = tempfile.NamedTemporaryFile()
filename = file.name
@henryjfry
henryjfry / subs2.py
Last active January 10, 2024 15:45
opensubtitles.org - HashFile = filehash = filesize + 64bit sum of the first and last 64k of the file
import struct, os
__64k = 65536
__longlong_format_char = 'q'
__byte_size = struct.calcsize(__longlong_format_char)
meta = {'filesize': '', 'filehash': ''}
def temp_file():
import tempfile
@henryjfry
henryjfry / seren.py
Last active February 23, 2021 09:53
SEREN 2.0 SMARTPLAY_FIX
/home/osmc/.kodi/addons/plugin.video.seren/resources/lib/modules/player.py
def _keep_alive(self):
################################################
#if self.min_time_before_scrape > time_left and not self.pre_scrape_initiated:
# self._handle_pre_scrape()
if self.current_time > 30 and not self.pre_scrape_initiated:
xbmc.log(str('SEREN_PRESCRAPE')+'===>PHIL', level=xbmc.LOGNOTICE)
self._handle_pre_scrape()
/home/osmc/.kodi/addons/plugin.video.seren/resources/lib/modules/globals.py
@henryjfry
henryjfry / helios.json
Created December 24, 2020 19:03
wako helios json
{
"yts": {
"name": "YTS",
"enabled": true,
"languages": [
"en"
],
"base_url": "https://yts.am",
"fallback_urls": [
"https://yts.pm",