FEL ČVUT vyvinula robotickou stavebnici pro mladé programátory. Stavebnice Brian byla navržená speciálně pro potřeby populární Robosoutěže. Jde ale také o samostatný produkt, který si může koupit každý fanoušek robotiky a programování od 10 let, ideální je i pro střední školy jako výuková pomůcka. Jádro stavebnice tvoří programovatelná řídicí jednotka, kterou vyvinul tým z FEL ČVUT ve spolupráci s průmyslovými partnery. Stavebnici
… více »Ubuntu bude pro testování nových verzí vydávat měsíční snapshoty. Dnes vyšel 1. snapshot Ubuntu 25.10 (Questing Quokka).
Společnost Netgate oznámila vydání nové verze 2.8.0 open source firewallové, routovací a VPN platformy pfSense (Wikipedie) postavené na FreeBSD. Přehled novinek v poznámkách k vydání.
Byla vydána nová verze 6.16 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Tor Browser byl povýšen na verzi 14.5.3. Linux na verzi 6.1.140. Další změny v příslušném seznamu.
Člověk odsouzený za obchod s drogami daroval letos ministerstvu spravedlnosti 468 kusů kryptoměny bitcoin, které pak resort v aukcích prodal za skoro miliardu korun. Darováním se zabývá policejní Národní centrála proti organizovanému zločinu (NCOZ). Deníku N to potvrdil přímo ministr spravedlnosti Pavel Blažek (ODS). Podle resortu bylo nicméně vše v souladu s právem.
Svobodný a otevřený multiplatformní editor EPUB souborů Sigil (Wikipedie, GitHub) byl vydán ve verzi 2.5.0. Stejně tak doprovodný vizuální EPUB XHTML editor PageEdit (GitHub).
Na základě národního atribučního procesu vláda České republiky označila Čínskou lidovou republiku za zodpovědnou za škodlivou kybernetickou kampaň proti jedné z neutajovaných komunikačních sítí Ministerstva zahraničních věcí ČR. Tato škodlivá aktivita, která trvala od roku 2022 a zasáhla instituci zařazenou na seznam české kritické infrastruktury, byla provedena kyberšpionážní skupinou APT31, veřejně spojovanou se zpravodajskou službou Ministerstvo státní bezpečnosti (MSS).
Google Chrome 137 byl prohlášen za stabilní. Nejnovější stabilní verze 137.0.7151.55 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 11 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Byl vydán AlmaLinux OS 10 s kódovým názvem Purple Lion. Podrobnosti v poznámkách k vydání. Na rozdíl od Red Hat Enterprise Linuxu 10 nadále podporuje x86-64-v2.
Byl vydán Mozilla Firefox 139.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 139 je již k dispozici také na Flathubu a Snapcraftu.
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.
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.novaA 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')a
files = os.listdir('./engines')na
files = os.listdir('/usr/share/tv-dl/engines')
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 assignmentMám něco rozbitého, nebo je problém jinde?
Fixed
Connecting ...
INFO: Connected...
ERROR: rtmp server sent error
ERROR: rtmp server requested close
Dí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 bytePř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 FoundBarrandov je OK. Že by ČT zase upravila ochranu ?