multilanguage

sobota, 19 listopada 2011

Pobieranie filmów z youtuba (...i innych podobnych)

Kiedyś pobieranie było dużo prostsze, można było kopiować filmu wprost z pamięci podręcznej przeglądarki. Do tej pory tak można. Tyle, że szukanie plików na dysku jest coraz bardziej utrudniane. Dlaczego by tak nie pominąć przeglądarki z całego procesu pobierania i zamiast próbować grzebać w jej plikach się za nią podszyć? (prawie jak MIDM) Przedstawiam metodę pobierania filmów z youtuba i podobnych, metoda wystarczająco szybka i na pierwszy rzut oka skomplikowana, aczkolwiek zawsze skuteczna.
Żeby pobrać filmik z youtuba oprócz oczywistego dostępu do internetu potrzebne nam będą dwie rzeczy:
  1. program o nazwie curl
  2. przeglądarka z możliwością zbadania ładowanych elementów strony
ad. 1) curl to właściwie biblioteka programistyczna obsługująca zapytania http itp. Taka konsolowa "prawie przeglądarka". Po więcej informacji odsyłam tutaj: http://pl.wikipedia.org/wiki/Curl Po samą bibliotekę tutaj: http://curl.haxx.se/download.html (wersja na każdy! system operacyjny).
ad 2)  Czyli każda z trzech: Google Chrome, Opera lub Mozilla Firefox. Swoja drogą jeśli używasz jakieś innej, szczególnie M$ to polecam ją wymienić.
  Dobra do dzieła, najpierw musimy obrać jakiś cel. Ja pobiorę: Josh Gabriel presents Winter Kills - Hot As Hades gdyż chcę potem wykorzystać ten utwór jako mp3 (zapomniałem dodać, że tak można?). Odpalamy przeglądarkę i  wchodzimy na stronę (tak jakbyśmy chcieli obejrzeć filmik). Wybieramy jakość filmu taką jak chcemy pobrać. Teraz stajemy gdziekolwiek na stronie i klikamy prawym klawiszem myszy, z menu wybieramy: "Zbadaj element" lub "Inspect Element", lub coś co brzmi podobnie. Naszym oczom powinno pojawić się takie okienko:


Wchodzimy w zakładkę: "Network"/"Sieć" i obserwujemy, jeżeli nic się nie pojawia to odświeżamy stronę. Mamy tam przedstawione: typ, rozmiar i czas ładowania obiektów na stronie. Teraz dochodzimy do kluczowego momentu, musimy w tym spisie odnaleźć nasz film, szukamy czegoś co:
  • jest plikiem video o rozszerzeniu mp4/flv
  • ma duży rozmiar (czasami plik jest ładowany z pamięci i rozmiar się nie wyświetla)
  • na youtubie ma nazwę: "videoplaback" ale to może się zmienić
Gdy już odnajdziemy coś takiego:
Klikamy, żeby podejrzeć dane które wysłała przeglądarka w celu pobrania tego elementu:
Teraz musimy podszyć się pod przeglądarkę i ściągnąć film na nasz dysk. Wykorzystujemy user-agent przegladarki i nasze cookie (najczęściej na tej podstawie serwisy pamiętają nasze ustawienia i to, że jesteśmy zalogowani). Prawda, że pięknie? Korzystam z Linuxa toteż dla takiego systemu będzie dalszy opis, ktoś obeznany z komputerem raczej nie będzie miał problemów z przerobienie opisu pod swój system, w razie kłopotów służę pomocą w komentarzach. Z racji tego, że nagłówki potrafią być naprawdę długie utworzę plik z poleceniem który zostanie następnie uruchomiony z konsoli. Wszystko wygląda mniej więcej tak:
curl --cookie "podejrzane Cookie"
--user-agent "podejrzany user agent" 
"podejrzany Request URL" >> nazwa_pliku_do_ktorego_zapisujemy
Oczywiście jest to jedna linijka, "entery" zostały dodane tylko dla czytelności. Przykładowe polecenie wygląda tak (nie musi działa, bo cookie jest zmienione):
curl --cookie "__utma=27069237.1177215004.1298483923.1317044822.1317068786.41; 4a8c54416fbf0W2QAAABzCwAAAGJVMVZTN0VrdHU0cwsAAAAyTkxVZ3lUWVA3c3MLAAAAbDFWbkcyZlZ4bmtzCwAAAHRDRHJaM0dHaE5ncwsAAAB3YXlTLUNVOGJOc3MLAAAAV3EwaWRYWDMxODRzCwAAAE9XVGhYa2RxNFgwcwsAAABJSGo1eU9EYm53WXMLAAAAVWd5NXFBclgxRHNzCwAAAHYydXBXbHFkUEZBcwsAAABYbVBqOTZCcGhob3MLAAAAQzczdUU2VFZldWtzCwAAAEkxaDFzakkwTHA0cwsAAABNNmNZNm9tcHp2c3MLAAAAaGJCczA3dkZGbDBzCwAAAFZBd2JxNnY0cnJrcwsAAABYUEFjTDJvbE1pTXMLAAAAdWV6OEpiRTBmSElzCwAAAGVhelZ3LXNTUW4wcwsAAAByWjhWV1lsdUNFQXMLAAAAQWd4Q2NPTm1UYlVzCwAAAFM2bTdzTFpVY2xncwsAAAAzakdpLVZpNlVWd3MLAAAAbDZSdERiOTdrMU1zCwAAAEtQRVVkd1Vkd3ZjcwsAAABEdVdNZGdpcDhxMHMLAAAATVM3QmxUT3FlMzhzCwAAAHQ1U2xxNG5QMnZvcwsAAAB2RENfOWhhbTJiWXMLAAAAZkRwSURHTWZpYTBzCwAAAGNMN0Q5eGtTRzdRcwsAAABrTVRtclZTdVNyd3MLAAAAOHBoVDZPX0hjdXNzCwAAAG9JTWFrVXZuY3ZzcwsAAABDUkQ4QVVnMkFwRXMLAAAATFhPLWpLa3NRa01zCwAAADQ4dFV4SjJqTHZBcwsAAABMZUpuOU5VSlpTRXMLAAAAUVltLWRUMjRpUllzCwAAAHFOT0IwTDNLdFFBcwsAAABoR2ktT1NZRkVwc3MLAAAAVGRocTdqcHZSVFFzCwAAAEJjeDZVTDlnSXpjcwsAAABTbUZJWjdtTHhxNHMLAAAAN3BQRGU4MkV0N2NzCwAAAHlISk96X3k5clpFcwsAAABHVFJxeGZubllVUXMLAAAAVGRpaFRoSkZ5ejRzCwAAAEJKMlZLRjI3SjBrcwsAAABPa3p4eGF0aGRfRXMLAAAAbEYxSFltcUtxNGdzCwAAADA5VTRtLXFxSHlRcwsAAABON2pNamFUMW9Nb3MLAAAAVDFwTWh3b3llUzRzCwAAAFA2VFVET1M4TXBzcwsAAABpTkdPdmw1bVZGc3MLAAAASW9BQXR0UEF2SGNzCwAAAENwZGtVd0ExNThVcwsAAABvcW9IcDk3aGF0UXMLAAAAenAzaHpFb1NOX29zCwAuAAFNnZ21zM3llZDBjcwsAAABqd2llZWwwM2Mtd3MLAAAAeF9WNTdhYTFrQXNzCwAAAG14RGVFNEMzYlVBcwsAAAAxU0VsM0dFN1BhWXMLAAAATkNoOHZxdzAwRklzCwAAAHZQdXYyNkFFb2hjcwsAAABjaWRlcHJ3N05MOHMLAAAAbmtBTlZLcWVnWmtzCwAAAGJBS0NfMHFDR2pZcwsAAABTcnBzS2xwZnhxY3MLAAAAR2theUlJRi1icU1zCwAAAHRmcDVkWlZ2NjNJcwsAAAA2MUpfLXhCck9oMHMLAAAAZFlLbHJDZklCb2tzCwAAAHZNektscDItX2NncwsAAABtbEI1R3NmdEhEY3MLAAAAanlKTEd6alhHUDhzCwAAADlWa3dzSlhvd0JncwsAAABLRDN5VElYaWtHNHMLAAAAQlFlYVRnTDlhX2NzCwAAAHZvbFEzakx2NW5ncwsAAABYbjl2dVJPd21wUXMLAAAAVWl4NVNPa1hTbWNzCwAAAGhnMXdUZGJiMHhRcwsAAAB1ZzlJYU5tNzUtRXMLAAAAcWVDNTZETFB4UjRzCwAAAGxGWHUtYmpHM2lVcwsAAABZcktqdXJnTGNlNHMLAAAAZVBnSlJPUC1GaU1zCwAAAHhweUtxc29WVXRjcwsAAABQOFBRVVRpQk55d3MLAAAAVG1qck51dzEzcW9zCwAAAEJoY1pCcjM4S21jcwsAAAAzR0hGWDZyLVNUUXMLAAAARmNIdjBHZDA1V1lzCwAAAHNNMjU0YVpIZWdJcwsAAABIQ010cXBULXZRa3MLAAAANmlTYWhXcHNUbG9zCwAAAE5aSkYxSDlCcU53; wide=1; GEO=6bff22ea4efc9a62feef8f61f00491edcwsAAAAzUExR2xzTToN5Yw==; PREF=f1=50000000&fv=10.3.183&pvdm=0&fvdm=1&uvdm=1&plsf=time_updated&plso=" --user-agent "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.186 Safari/535.1" "http://o-o.preferred.netia-ktw1.v24.lscache1.c.youtube.com/videoplayback?sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Cratebypass%2Ccp&itag=37&ip=81.0.0.0&signature=0F7E103A21D727AF0661A67602B9E6D607584096.4FF7043EB4E66DDA825E93039A1AB70705FE6551&sver=3&ratebypass=yes&expire=1317265200&key=yt1&ipbits=8&cp=U0hQTFJRU19FSkNOMF9KS1dDOm9ZSl8xNzlPWU1F&id=231818868afe3765&ptchn=armadamusic&ptk=armadamusic">>video2
Jak wspomniałem wcześniej cały ten kod zamieszczamy w jakimś pliku, u mnie będzie nazywał się youtube.sh, teraz dwie komendy w konsoli, chwila oczekiwania...
 ...i możemy obejrzeć już nasz film będąc offline:
Gotowe! Prawda, że szybko? Co dalej? Mamy kilka możliwości, możemy:
  •  przekonwertować film na inny format (polecam program MEncoder), dobre gdy pobieramy całe filmy i chcemy je oglądać na DVD.
  • pozbyć się teledysku i korzystać z samej mp3, do tego celu przyda się SoundConverter (tylko linux), a także audacity (all OS) (do pozbycia się niechcianych fragmentów i otagowania utworu).
Metoda ta najprawdopodobniej jest skuteczna również dla wszystkich innych serwisów. Nie musiałem korzystać z innych, więc nie wiem...

1 komentarz: