Programovací jazyk Python byl vydán v nové major verzi 3.15.0. Podrobný přehled novinek v aktualizované dokumentaci.
BIGWORDS.PAGE je open-source webová aplikace, která po otevření odkazu v prohlížeči vykreslí přes celou obrazovku jednoduché informační sdělení. Zpráva i její nastavení jsou uložené v části URL za znakem #, například odkaz https://bigwords.page/#abclinuxu zobrazí jako velký bílý nápis 'abclinuxu' na černém pozadí. Obsah odkazu lze upravovat i vestavěným editorem, ten umožňuje nastavovat formátování a vizuální efekty textu, časovače, QR kódy a obrázky. Zdrojový kód je dostupný pod licencí MIT na GitHubu.
V neděli 11. října proběhne rotace klíče kořenové zóny. Podruhé v historii. Ondřej Filip na blogu CZ.NIC: "Pokud je pro Vás DNS protokol spíše výzva, ale přesto spravujete nějakou síť či DNS resolver, zkuste si jednoduchý test, který připravila firma Cloudflare na této adrese. Obzvláště zbystřit byste měli, pokud uvidíte nějaká červená políčka."
Vláda Spojených států se rozhodla vyřadit americkou softwarovou společnost Microsoft a několik dalších velkých technologických podniků z programu, který umožňuje kvalifikovaným zahraničním pracovníkům získat povolení k trvalému pobytu. Oznámila to včera administrativa amerického prezidenta Donalda Trumpa. Opatření zdůvodnila rozsáhlým zneužíváním programu, který je dlouhodobě terčem kritiky ze strany Trumpových příznivců, neboť prý znevýhodňuje americké pracovníky.
Datové centrum největší ruské technologické společnosti Jandex v Rjazaňské oblasti se stalo cílem dronového útoku a zastavilo provoz. Jandexu se někdy přezdívá „ruský Google“. Provozuje nejoblíbenější internetový vyhledávač v Rusku nebo aplikace pro objednávky jídla a taxi. Využívají jej desítky milionů lidí v rusky mluvících zemích.
Francouzská společnost Mistral AI představila Mistral Large 4 (interně přezdívaný 'le Chonk', volně přeloženo 'pořádný macek'), 'open-weight multimodální hybridní instruct-and-reasoning model s architekturou granulárního MoE, nativně podporující více jak 160 jazyků'. Model má přes jeden bilión parametrů, z nichž při práci využívá 49 miliard, kontextové okno o délce milion tokenů a obrazový enkodér o 1,6 miliardách parametrů.
… více »Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.20. Díky 227 přispěvatelům.
Simon Long oznámil Raspberry Pi Desktop pro PC a Mac s Intelem postavený na aktualizovaném Debianu 13 Trixie. S klientem Raspberry Pi Connect pro vzdálenou správu. Ke stažení je vedle Raspberry Pi OS pro Raspberry Pi.
ESP32-C3 adblock přemění lacinou vývojovou desku ESP32‑C3 na samostatný DNS blokovač nejenom reklamních domén, minimalistickou alternativu k populárnímu Pi-hole. ESP32-C3 adblock místo objemných názvů domén ukládá jejich 40-bitové FNV-1a hashe do flash paměti, které pak binárně prohledává, kontrola jedné domény trvá přibližně 10 milisekund. Blocklist pojme až 537 tisíc domén a lze jej spravovat přes webové rozhraní. Projekt zatím
… více »ArtCraft je sada open source aplikací pro práci s obrázky a videi "inspirovaných" aplikacemi od Adobe. Napsaných v Rustu. Pro MacOS, Windows i Linux. Běží také ve webovém prohlížeči. Aktuálně se jedná o 7 aplikací: PhotoCraft (Photoshop), VectorCraft (Illustrator), FilmCraft (Premiere Pro), LightCraft (Lightroom), PdfCraft (Acrobat), EffectCraft (After Effects) a DesignCraft (InDesign). Zdrojové kódy jsou k dispozici na GitHubu.
Řešení dotazu:
Na té desce je třeba odkaz na tuto stránku "https://infodeska.justice.cz/vyveseni.aspx?vyveseniid=8675925"; na ní je pdf-ko (https://infodeska.justice.cz/soubor.aspx?souborid=8834213) usnesení soudu, kde soud žádá, aby se mu přihlásili lidi co viděli Jiřího V., než ho prohlásí za mrtvého.
Mě se jedná o to, že chci na té desce soudu prohledat všechny (strojově čitelné) pdf soubory s usneseními, vyhláškami a pod., které v sobě obsahují zmínky o např. Jiřím V (v prvním pádě j.č.). Jde mi prostě o to vyhledávání, protože ručně proklikávat všechny pdf-ka je mimo mé schopnosti.
AI mi tvrdila, že by to šlo udělat tak, že se přes wget stáhnou všechny pdf soubory na desce a pak se prohledá obsah jednotlivých souborů, a ten který nebude mít požadovaný obsah se smaže. Jí vygenerovaný kód ale neudělal nic.
konkrétně to vyplivlo toto:
wget -r -l1 -nd -A pdf URL_STRÁNKY
-r(recursive): Rekurzivní stahování.-l1(level): Nastaví hloubku rekurze na 1 (prohledá pouze aktuální stránku).-nd(no directories): Uloží všechny soubory do aktuálního adresáře (ne do žádných podadresářů).-A pdf: Stáhne pouze soubory s příponou
Jí vygenerovaný kód ale neudělal nic.
wget myslimže na tudlectu stránku nepude nějak rozumě použít páč jsou tam přípony souborů skrytý a soubory jsou poskovávaný jako nějaký proměný 'souborid' strkaný do furt stejnýho nějakýho aspx windowsího skriptu kterej nám pak sype ty hotový pdfka. Nicmeně ty jednotlivý pdfka je možný pořád wgetem stáhnout když známe to souborid, jen ten wget budem muset jakože dost víst za ručičku :D ;D
nejdřiv si stáhnem tu stránku která nás zajimá, uděláme to tak že použijem přepínadlo '-k' by nám to nepřevedlo adresy odkazů do lokální podoby ale nechalo je to v tý takzvaný absoltuní, to nám zjednoduší další dělání:
wget -k -np https://infodeska.justice.cz/subjekt.aspx?subjkod=202090
v dalším kroku si z toho souboru vytáhnem pomocí hele grepu všecky validní url adresy který začinaj na 'https://infodeska.justice.cz/soubor.aspx' a strčíme si je do txťáku pro další použití:
cat subjekt.aspx?subjkod=202090 | grep -Eo "https://infodeska.justice.cz/soubor.aspx[a-zA-Z0-9./?=_-]*" > urls.txt
vyrobíme si podsložšku a do ní si pomocí wgetu postahujem všecky ty pdfka, to už muže chvilku trvat, v zavislosti na počtu a velikosti těch souborů a jak moc se ten justicovej web bude bránit :D
mkdir pdfka wget -i urls.txt -P ./pdfka
tak to bysme měli stažený ty pdfka, teďko bude asi eště potřeba ňák jakože prohledat ty soubory pro ty různý iča nebo mena, todle je pro mě terra incognita ale asi by šel použít hele pdfgrep :O ;D
jestli nemáme tak si ho v ubuntu mužeme nainstalovat asi pomocí vobligátního 'sudo apt install pdfgrep'
složku s těma pdfkama prohledáme pdfgrepem pro výskyt nějakýho ména třeba jozef:
pdfgrep Jozef ./pdfka/*
....a hele voni tam ňáký jozefové sou :O :D :O :D
./pdfka/soubor.aspx?souborid=8825981:Adresát : Jozef Kizek, 1994 ./pdfka/soubor.aspx?souborid=8825982: Adresát: Jozef Kizek, 1994 ./pdfka/soubor.aspx?souborid=8827322:Adresát Jozef Ollé, narozený 1991
takže jo, to by asi jako šlo použít :O ;D asi by to šlo eště vylepšit přesměrováním wgetu rovnou do grepu a to pak rovnou do toho druhýho grepu by se ušetřilo zbytečný zapisování na disk + další kejkle ale zatim asi jako dobrý :O ;D
supr :D ;D
jestli to chceš jako skript tak asi jako takle nějak
#!/usr/bin/env bash
# první argument skriptu je stránka kterou budem prohledávat
# druhej hledanej vyraz v těch pdfkách, třeba nějaký to méno
prohledavanaStranka=$1
hledanejVyraz=$2
# vyrobíme si složšku kam postahujem ty pdfka
mkdir -p PDFka
# stáhnem si prohledávanou stránku a rovnou ji proženem grepem a
# postahujem si všecky ty pdfka
wget -q -np $prohledavanaStranka -O- | grep -Eo "soubor.aspx[a-zA-Z0-9./?=_-]*" | \
while read url
do
echo "stahuje se: $url"
# musíme si připsat ten prefix ke každýmu souboru
# (když strkáme vystup wgetu na standartní vystup tak
# nejde použít přepinač -k )
wget -q -P ./PDFka "https://infodeska.justice.cz/$url"
done
echo ""
echo "soubory jsou stažený"
echo ""
echo "budeme v nich hledat $hledanejVyraz :"
echo ""
# projdem složšku s pdfkama pro hledanej vyraz
pdfgrep $hledanejVyraz ./PDFka/*
# po skončení bysme asi jako mohli smazat ty pdfka ale předpokládám
# že snima asi jakože budeš nějak dál dělat možná, tak to necham zakomentovaný rači :O ;D
# rm ./PDFka/*
zapsat to třeba do souboru 'skript.sh', udělat to přikazem 'chmod +x skript.sh' spustitelný a pouštět třeba jako './skript.sh https://infodeska.justice.cz/subjekt.aspx?subjkod=123456 Jozef' :D ;D
baseURL = 'https://infodeska.justice.cz/'
URL = 'https://infodeska.justice.cz/subjekt.aspx?subjkod=202090'
import requests
headers = {'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.246"}
r = requests.get(URL)
from bs4 import BeautifulSoup
obsah = BeautifulSoup(r.content, 'html5lib')
import re
def najdi_soubory(href):
return href and re.compile('soubor.aspx').search(href)
k_prohledani = []
for odkaz in obsah.find_all(href=najdi_soubory):
k_prohledani.append(f'{baseURL}{odkaz['href']}')
from pdfquery import PDFQuery
from io import BytesIO
hledane = "Jmeno/ICO"
for soubor in k_prohledani:
f = requests.get(k_prohledani[0])
bytes_stream = BytesIO(f.content)
pdf = PDFQuery(bytes_stream)
pdf.load()
nalezeno = pdf.pq(f':contains({hledane})')
if nalezeno:
print(f'"{hledane}" nalezeno v souboru {soubor}')
netuším, jak to pustit
to jeho je skript v pythonu :O ;D
myslimže python je v ubuntu už předinstalovanej, budeš si iirc muset nainstalovat jenom pip
sudo apt install python3-pip
noa pak všecky potřebný knihovny, to znamená requests, BeautifulSoup a PDFQuery
pip3 install requests pdfquery beautifulsoup4
pak ten Nealův skript mužeš pustit třeba jako
python3 skript.py
Tiskni
Sdílej: