Podvodné reklamy na sociálních internetových platformách, jako je Facebook, Instagram nebo X, vytvořily loni v Česku jejich provozovatelům příjmy 139 milionů eur, tedy zhruba 3,4 miliardy korun. Proti roku 2022 je to nárůst o 51 procent. Vyplývá to z analýzy Juniper Research pro společnost Revolut. Podle výzkumu je v Česku zhruba jedna ze sedmi zobrazených reklam podvodná. Je to o 14,5 procenta více, než je evropský průměr, kde je podvodná každá desátá reklama.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.6 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.
Czkawka a Krokiet, grafické aplikace pro hledání duplicitních a zbytečných souborů, byly vydány ve verzi 11.0. Podrobný přehled novinek v příspěvku na Medium. Od verze 7.0 je vedle frontendu Czkawka postaveného nad frameworkem GTK 4 vyvíjen nový frontend Krokiet postavený nad frameworkem Slint. Frontend Czkawka je už pouze v udržovacím módu. Novinky jsou implementovány ve frontendu Krokiet.
Jiří Eischmann na svém blogu publikoval článek Úvod do MeshCore: "Doteď mě radioamatérské vysílání úplně míjelo. Když jsem se ale dozvěděl, že existují komunity, které svépomocí budují bezdrátové sítě, které jsou nezávislé na Internetu a do značné míry taky elektrické síti a přes které můžete komunikovat s lidmi i na druhé straně republiky, zaujalo mě to. Když o tom přede mnou pořád básnili kolegové v práci, rozhodl jsem se, že to zkusím taky.
… více »Byla vydána verze 0.5.20 open source správce počítačových her na Linuxu Lutris (Wikipedie). Přehled novinek v oznámení na GitHubu. Instalovat lze také z Flathubu.
Peter Steinberger, autor open source AI asistenta OpenClaw, nastupuje do OpenAI. OpenClaw bude převeden pod nadaci a zůstane otevřený a nezávislý.
Společnost Backblaze zveřejnila statistiky spolehlivosti pevných disků používaných ve svých datových centrech za rok 2025. Ke konci roku 2025 vlastnila 349 462 pevných disků. Průměrná AFR (Annualized Failure Rate), tj. pravděpodobnost, že disk během roku selže, byla 1,36 %. V roce 2024 to bylo 1,57 %. V roce 2023 to bylo 1,70 %. V roce 2022 to bylo 1,37 %.
Nástroj sql-tap je proxy mezi aplikací a databází, které zachytává všechny SQL dotazy a zobrazuje je v terminálovém rozhraní. Zde lze téměř v reálném čase zkoumat dotazy, sledovat transakce a spouštět SQL příkaz EXPLAIN. Podporované databázové systémy jsou pouze PostgreSQL a MySQL. Zdrojový kód je dostupný na GitHubu, pod licencí MIT.
Byla vydána nová verze 9.2 textového editoru Vim (Vi IMproved). Přináší vylepšené doplňování, podporu schránky ve Waylandu, podporu XDG Base Directory (konfigurace v $HOME/.config/vim), vylepšené Vim9 skriptování nebo lepší zvýrazňování změn. Vim zůstává charityware. Nadále vybízí k podpoře dětí v Ugandě. Z důvodu úmrtí autora Vimu Brama Moolenaara a ukončení činnosti jím založené charitativní organizace ICCF Holland projekt Vim navázal spolupráci s charitativní organizaci Kuwasha.
Byl představen editor MonoSketch, webová aplikace pro tvorbu diagramů, technických nákresů, flowchartů a různých dalších vizualizací, to vše jenom z ASCII znaků. Všechny operace běží pouze v prohlížeči uživatele a neprobíhá tedy žádné nahrávání dat na server. Zdrojový kód aplikace (drtivá většina Kotlin, žádné C#) je dostupný na GitHubu pod licencí Apache 2.0.
Nova-dl se za tu dobu už docela proflákl, dokonce dostal i GUI. Ale pořád to umělo jenom Novu...
Nový ČT iVysílání je teď taky RTMP-pozitivní, a další televize asi taky, takže jsem se rozhodl to celý předělat, aby to bylo tak nějak modulární. Narozdíl od svýho přechůdce je v Pythonu 3. Rtmpdump používá normálně z PATH, už je snad v každé distribuci. Další televize (Prima a Barrandov - nevím, jestli to k něčemu bude, ale bylo to jako feature request u nova-dl, tak asi jo) přibudou časem.
Kód je na GitHubu.
EDIT: minimální verze Pythonu je 3.2 (kvůli modulu argparse)
Tiskni
Sdílej:
Tak honem, stahujte, testujte a pište připomínky!
Jak píšu, je to na Python 3. Ale když dám na druhou řádku
#-*- coding: utf-8 -*-
tak mi to na 2.7.1 funguje. Nebo se to aspoň spustí...
Hmm, tam je pěkně naprd, že to je všecko napatlaný na jedné stránce a v normálním archivu Primy Kraus není. Ale podívám se na to...
sjk.py "http://www.iprima.cz/showjanakrause/videoarchiv-leden-unor-2011"
Nič sa tam netestuje, takže je veľmi veľa možností, prečo to nemusí fungovať (každopádne "mne to funguje" (tm))#!/usr/bin/env python
import re
import sys
import urllib2
def download_file(url, referer=None):
req = urllib2.Request(url)
if referer is not None:
req.add_header('Referer', referer)
f = urllib2.urlopen(req)
return f.read()
page_url = sys.argv[1]
page = download_file(page_url)
items = [re.split(r'\',\s*\'', item.group(1)) for item in re.finditer(r'LiveboxPlayer\.init\(\'([^)]+)\'\)', page)]
if len(items) == 0:
sys.exit(1)
script = download_file('http://embed.livebox.cz/iprima/player.js', page_url)
rtmp = re.search(r"stream: '(rtmp://iprima.livebox.cz/iprima_token\?auth=_any_\|\d+\|[0-9a-f]+)',", script).group(1)
for item in items:
print "%s\n\tLQ: %s/%s\n\tHQ: %s/%s\n" % (item[6] if len(item) > 6 else '???', rtmp, item[4], rtmp, item[3])
Vypíše to:
./sjk.sh "http://www.iprima.cz/showjanakrause/videoarchiv-leden-unor-2011"
2011/02/25 23:00:00
LQ: rtmp://iprima.livebox.cz/iprima_token?auth=_any_|1307565202|99c6f0360abf18d40e0e837124003709bcd5bf67/Kraus-201026-4739_LQ.flv
HQ: rtmp://iprima.livebox.cz/iprima_token?auth=_any_|1307565202|99c6f0360abf18d40e0e837124003709bcd5bf67/Kraus-201026-4739_HQ.flv
2011/02/25 11:00:00
LQ: rtmp://iprima.livebox.cz/iprima_token?auth=_any_|1307565202|99c6f0360abf18d40e0e837124003709bcd5bf67/KrausCut-202726-2383592_LQ.flv
HQ: rtmp://iprima.livebox.cz/iprima_token?auth=_any_|1307565202|99c6f0360abf18d40e0e837124003709bcd5bf67/KrausCut-202726-2383592_HQ.flv
Je to tam.
).
Je to také opensource (ovšem napsáno je to v Pascalu/Delphi), tak se tam můžeš inspirovat při psaní modulů pro jiné servery (hlavně tu Primu!
). Osobně bych se v tomto případě (kvůli SSH) velmi rád zbavil závislosti na GUI programu a navíc pod Wine, fuj (byť tedy funguje pod ním bezchybně, to zas né že ne).
ovšem napsáno je to v Pascalu/Delphiškoda, že není podporován Linux. Autor by to mohl naportovat pro Lazarus.
sed -i -e "s/.\/engines/\/usr\/share\/tv-dl/"ovšem stěžuje si to na:
File "/usr/bin/tv-dl", line 20, in import_engines
m = __import__("engines.{}".format(file[:-3]) )
ImportError: No module named engines.nova
A zde už má intuice selhává. Poradí někdo?
sys.path.insert(0, "/usr/share/tv-dl")
/usr/share/tv-dl/engines (aby to bolo prehľadné aj v prípade, ak by sa tam neskôr dali aj iné súbory).
Potom by sa v tom cli zmenilosys.path.append(os.getcwd())na
sys.path.append('/usr/share/tv-dl')afiles = os.listdir('./engines')nafiles = os.listdir('/usr/share/tv-dl/engines')
Funguje to s výchozím pojmenováním souboru. Ale volba -o mi nefunguje. Např:
tv-dl -o Udalosti.flv http://www.ceskatelevize.cz/ivysilani/1097181328-udalosti/211411000100608/
Traceback (most recent call last):
File "/usr/bin/tv-dl", line 67, in <module>
main()
File "/usr/bin/tv-dl", line 50, in main
d[1] = args.output
TypeError: 'tuple' object does not support item assignment
Mám něco rozbitého, nebo je problém jinde?
Fixed 
Connecting ...
INFO: Connected...
ERROR: rtmp server sent error
ERROR: rtmp server requested closeDíky.
Connecting ... INFO: Connected... ERROR: rtmp server sent error ERROR: rtmp server requested close
Co když to spustíš s volbou -g?
Aha, ČT změnila RTMP URL a zase to rtmpdump neumí rozparsovat... Opraveno.
Jo vidíš, na tohle jsem zapoměl...
Opraveno.
st@n:~$ python3.2 /media/DATA/Programy/Limoto-tv-dl-3d8c378/tv-dl http://www.ceskatelevize.cz/ivysilani/10090925908-vsechnoparty/211522161600025/
Traceback (most recent call last):
File "/media/DATA/Programy/Limoto-tv-dl-3d8c378/tv-dl", line 85, in < module >
main()
File "/media/DATA/Programy/Limoto-tv-dl-3d8c378/tv-dl", line 33, in main
import_engines()
File "/media/DATA/Programy/Limoto-tv-dl-3d8c378/tv-dl", line 23, in import_engines
m = __import__("engines.{}".format(file[:-3]) )
File "/media/DATA/Programy/Limoto-tv-dl-3d8c378/engines/ct.py", line 9, in < module >
import re,os.path, urllib.request, urllib.parse, json, http.cookiejar
ImportError: No module named urllib.request
st@n:~$ /media/DATA/Programy/Limoto-tv-dl-3d8c378/tv-dl http://www.ceskatelevize.cz/ivysilani/10090925908-vsechnoparty/211522161600025/
bash: /media/DATA/Programy/Limoto-tv-dl-3d8c378/tv-dl: Operace zamítnuta
st@n:~$ sudo /media/DATA/Programy/Limoto-tv-dl-3d8c378/tv-dl http://www.ceskatelevize.cz/ivysilani/10090925908-vsechnoparty/211522161600025/
sudo: unable to execute /media/DATA/Programy/Limoto-tv-dl-3d8c378/tv-dl: Operace zamítnuta
sudo chmod 777 /media/DATA/Programy/Limoto-tv-dl-3d8c378/tv-dl
a pak by to už mělo jet.
ImportError: No module named urllib.request
Nakonec pomohla instalace poslední verze Pythonu (3.2.2)
rtmp://wcdn61.nacevi.cz:80/nova-vod?id=YWJhZDJlfGwjNjUzN2UyMXVxfDU=
Traceback (most recent call last):
File "./tv-dl", line 88, in module
main()
File "./tv-dl", line 46, in main
d = e.download(args.quality, args.movie)
File "/mnt/data/video/Limoto-tv-dl-3778960/engines/nova.py", line 60, in download
playpath = e.find('url').text
AttributeError: 'NoneType' object has no attribute 'find'
Funguje to teď na aktuální verzi?
Traceback (most recent call last):
File "/usr/bin/tv-dl", line 71, in module>
main()
File "/usr/bin/tv-dl", line 31, in main
e = get_engine(args.URL)[2](args.URL)
File "/usr/share/tv-dl/engines/ct.py", line 38, in __init__
self.page = urlopen(url).read().decode('utf-8')
UnicodeDecodeError: 'utf8' codec can't decode byte 0xec in position 46698: invalid continuation byte Před tím "module" jsem umázl stříšku doleva, bralo ji to jako tag. Museli něco někde změnit, nedávno to ještě fungovalo.
.
tv-dl jsem spustil s parametrem -v, což vypíše, jak je volán prográmek rtmpdump. V něm jsem pak nahradil parametr --live za --start a --stop. (přímé volání rtmpdump se mi osvědčilo při navázání přerušeného stahování. Navíc je stahování bez --live výrazně rychlejší.
./tv-dl "http://www.ceskatelevize.cz/porady/10431237232-laska-a-smrt-v-jedne-noci/21338255458/"
Traceback (most recent call last):
File "./tv-dl", line 123, in module
downloader.main()
File "./tv-dl", line 29, in main
e = self.get_engine(self.args.URL)[2](self.args.URL)
File "/home/hugo/tv-dl-master/engines/ct.py", line 70, in __init__
pl_url = unquote( urlopen(req).read().decode('utf-8') )
File "/usr/lib/python3.2/urllib/request.py", line 138, in urlopen
return opener.open(url, data, timeout)
File "/usr/lib/python3.2/urllib/request.py", line 375, in open
response = meth(req, response)
File "/usr/lib/python3.2/urllib/request.py", line 487, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib/python3.2/urllib/request.py", line 413, in error
return self._call_chain(*args)
File "/usr/lib/python3.2/urllib/request.py", line 347, in _call_chain
result = func(*args)
File "/usr/lib/python3.2/urllib/request.py", line 495, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found
Barrandov je OK.
Že by ČT zase upravila ochranu ?