Kezdőoldal » Számítástechnika » Programozás » Hogyan lehet beállítani...

Hogyan lehet beállítani automatikusra egy link letöltését linux rendszeren?

Figyelt kérdés

Azt szeretném megcsinálni linux vps szerveremen, hogy egy weboldalról ahová fel van töltve egy film (pl:clipwat....) annak automatikusan letöltse a direct linkjét.

Lehet, hogy nem megoldható vagy csak én nem jövök rá hogyan kell, de remélem tudtok nekem ebben segíteni.

A legjobb lenne az ha naponta le tudná szedni a linket és azt el mentené egy "strm" fájlba vagy "txt"-be. Esetleg van erre valamilyen parancs az automatikát azt megtudnám szerintem oldani.



2021. márc. 6. 18:12
 31/99 CspCsj ***** válasza:

A.

Böngészőben már nekem sem indul az általad megadott clipwatching video lejátszása, de a parancs kinyeri a linket, és az ffmpeg tölti az MP4-et.


Esetleg az lenne, hogy a "nagy érdeklődésre" való tekintettel, a clipwatching korlátozta ezt a videót?


Itt az általam kapott közvetlen MP4 link, amit az FFmpeg tölt:

[link]


B.

Ez csak egy általam barkácsolt parancs(láncolat) ami a következők egyszerű lépéseket csinálja:

1. wget -qO- link

letölti a megadott linkről a HTML forráskódot és nem menti, hanem csak kiírja a képernyőre (illetve továbbítja a grep parancsnak a "|" jelre)

2. grep -Eo 'https[^\"]+.mp4'

a kapott szövegben (forráskódban) keres olyan szövegrészt (reguláris keresőkifejezéssel=regular expression), ami https-sel kezdődik és .mp4-re végződik (kb. https******.mp4), illetve nincs benne visszaperjel és aposztróf - és csak ezt kiírja a képernyőre (továbbítja a fájlba mentéshez)

3. > útvonal/fájlnév

a kapott szöveget (linket) lementi a megadott fájlba (">" jel jelenti a fájlba írást)


(A továbbítások nélkül mindkét köztes állapotot fájlba kellene írni és onnét beolvastatni a következő parancsnak.)


C.

Ha többféle weboldalhoz akarsz ilyet csinálni, akkor a keresőkifejezést kell igazítani az adott oldal forráskódjához, így már bonyolultabb script-re lesz szükség, hogy a megadott weboldalnak megfelelő szövegrészt (linket) találja meg a forráskódban.

2021. márc. 7. 00:01
Hasznos számodra ez a válasz?
 32/99 A kérdező kommentje:

Nagyon szépen köszönöm ezt a részletes leírást! :)

A wrong ip problémát is sikerül megoldanom. A lényeg, hogy csak azzal az ip címmel működik a generált link amelyiken generálták!

2021. márc. 7. 09:57
 33/99 A kérdező kommentje:

Megint elakadtam :\ csináltam egy .sh fájlt bele raktam ezt az össze rakott link kinyerős parancsot kettőt. De ha így nyerem ki a linkeket akkor nem lehet megnyitni a fájlokat a program sem ismeri fel és letörölni sem tudom. Mintha nem is lennének meg az azok az strm fájlok amiben a linkek vannak...

Tudnátok nekem ebbe segiteni?

2021. márc. 7. 15:59
 34/99 A kérdező kommentje:
Ha sikerülne beállítani ezt hogy egy fájlba rakjak kb 1000 ilyen link kinyerős parancsot akkor sokkal egyszerűbben tudnám időzíteni.
2021. márc. 7. 16:03
 35/99 anonim ***** válasza:

A parancsot csak egyszer kéne sh fájlba rakni, egy fájlból kéne kiolvassa a linkek listáját, és utána egy .strm fájlba menteni a direct linket.


wget -qO- -i linkek_listaja.txt | grep -Eo 'https[^\"]+.mp4' >> kimenet.strm

2021. márc. 7. 16:22
Hasznos számodra ez a válasz?
 36/99 anonim ***** válasza:

Bocsi, a végére csak egy < kell, tahát így:

wget -qO- -i linkek_listaja.txt | grep -Eo 'https[^\"]+.mp4' > kimenet.strm

2021. márc. 7. 16:23
Hasznos számodra ez a válasz?
 37/99 anonim ***** válasza:
Közben rájöttem, hogy gondolom külön fájlokban kellene neked a kimenet, ebben az esetben a bash tudásom hiányos, és csak python-ban tudnám neked megírni. Az kéne?
2021. márc. 7. 16:32
Hasznos számodra ez a válasz?
 38/99 A kérdező kommentje:
Ez így tetszik viszon külön kellene a kinenet.strm fájlokat is menteni. Vagyis egy link egy strm fájl saját névvel. így kellene mert így tudja az emby szerver felismerni a filmeket.
2021. márc. 7. 16:36
 39/99 A kérdező kommentje:
Igen úgy szeretném, hogy külön és jo lenne ha a kimeneti fájloknak tudnék nevet adni. Mert akkor már teljesen automata lenne a rendszer!
2021. márc. 7. 16:41
 40/99 anonim ***** válasza:

Na nagy nehezen sikerült összehozni, szólj ha esetleg van vele valami gond. movies.txt nevű fájlból olvassa ki a linkeket, ezt át tudod írni, ha kell. A kimenethez a fájlnevet szintén a weboldalból szedi ki.


filename=""

while IFS= read -r line; do

if [[ !($line =~ ".") ]]; then

filename=$line

fi

if [[ $line =~ "." ]]; then

echo $line >> "${filename}.strm"

filename=""

fi

done <<< $(wget -qO- -i movies.txt | grep -Eo 'Watch video [^"]+|https[^\"]+.mp4')

2021. márc. 7. 18:25
Hasznos számodra ez a válasz?

További kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!