Wrzuta error

Programiści z wrzuty po raz kolejny zmienili sposób pobierania danych ich playera z serwerów. Rezultat jest dosyć oczywisty, większość programów oraz serwisów żerujących na wrzucie przestało działać. Jako, że wizja niemożności słuchania Beethovena w przeglądarce bez Flasha była wręcz przerażająca - postanowiłem przyjrzeć się co się zmieniło.

Dawniej wystarczyło skopiować tzw. hash z adresu naszego utworu Beethovena po czym przepisać adres w przeglądarce na kształt:

http://[1].wrzuta.pl/aud/file/[2]/[3]

1 - nick osoby która wgrała plik
2 - hash pliku
3 - nazwa utworu (chyba nawet nie potrzebna)

Zostało to później zmienione - tzn. zmiany nazw katalogów, ale zasada była taka sama. Dzisiaj aby dostać się do pliku wymagany jest nie tylko hash (i to nie ten który widnieje w adresie przeglądarki!), ale również czas wywołania żądania oraz pewna suma kontrolna - która jest generowana względem czasu żądania.

http://c.wrzuta.pl/[1]/[2]?SDSAccessKeyId=[3]&Signature=[4]&Expires=[5]

1 i 2 - hash najprawdopodobniej zależny od nazwy utworu/uploadera
3 - wewnątrz serwerowy hash pliku
4 - suma kontrolna
5 - czas żądania typu POSIX

Taki link jest generowany tylko raz, i domyślam się, że staje się nieaktywny po pewnym czasie. Wniosek jest jeden: za każdym razem gdy chcemy odtworzyć utwór Beethovena potrzebny jest nam nowy link.

Jak się okazuje to nie Flashowy player buduje powyższy link do pliku tylko serwer wrzuty. Czyli zanim odtworzymy cokolwiek na wrzucie, najpierw player łączy się z serwerem po czym dostaje owy wygenerowany link i dopiero pobiera interesujący nas plik. Jak otrzymuje owy link?

http://[1].wrzuta.pl/xml/plik/[2]

1 - nazwa użytkownika
2 - hash pliku (ten z adresu)

W odpowiedzi otrzymujemy dokument XML, gdzie w drzewie dokumentu znajdujemy tag fileId z naszym nowym wygenerowanym adresem. Tadam!

Mądra myśl!

Jeżeli myślisz, że zmiana jest bezsensowna bo dalej można dowolnie pobierać pliki to jesteś bliski prawdy. Tym to sposobem Wrzuta.pl zablokowała dostęp do tworzenia pobieranych linków wszystkim serwisom Internetowym generującym owe linki za pomocą JavaScriptu (z poziomu JS nie można pobierać żadnych danych nie ze swojej domeny).

Natomiast serwisy które ten zabieg zrobią po stronie serwera, wrzuta może z czasem zablokować dostęp do serwera po IP - w końcu adres IP serwera jest stały. Zostaną tylko sprawne aplikacje po stronie klienta i własne wklepywanie adresu w przeglądarkę...

Komentarze do wpisu "Wrzuta.pl i pobieranie znów nie działa...":

1. D4rky napisał(a):
18 lipca 2010, 22:20:00

Natomiast serwisy które ten zabieg zrobią po stronie serwera, wrzuta może z czasem zablokować dostęp do serwera po IP - w końcu adres IP serwera jest stały. Zostaną tylko sprawne aplikacje po stronie klienta i własne wklepywanie adresu w przeglądarkę...

Sygnaturka jest tworzona m.in na podstawie IP (ew jest przydzielana do IP na serwerze), dlatego jeden link nie zadziała nigdzie indziej.

Napisałem już jakiś czas temu oneliner do pobierania, w celu utworzenia skryptu wykonywalnego należy usunąć function wrzuta() { oraz } na samym końcu i zapisać jako plik.
Skrypt

2. bezkarny napisał(a):
19 lipca 2010, 09:47:47

Wchodzisz w link na wrzucie i dopisujesz w adres awrzuta.pl

3. b4rtaz napisał(a):
19 lipca 2010, 11:33:58

@bezkarny: jeszcze... :)

4. Symek napisał(a):
19 lipca 2010, 13:38:11

(...).dwrzuta.pl/(...) też jeszcze działa. Albo już działa, nie wiem ;)

5. Ravicious napisał(a):
19 lipca 2010, 13:42:01

Interesuje mnie jedna rzecz. Korzystając z awrzuta.pl czy skryptu D4rky'ego, pobierany plik waży o wiele mniej niż ten wrzucony na serwer.

Przykład: http://w290.wrzuta.pl/audio/0CejoOCuAw8/buckethead_-_siege_engine
Na wrzucie - 17,5MB
Podczas pobierania - 7,5MB

Celowo zmniejszają jakość plików? Bo wątpię, żeby udało im się osiągnąć taką kompresję bez utraty jakości.

No i pomyślcie jak bardzo zajebisty byłby ten serwis z dobrym API, gdyby był choć trochę bardziej przyjazny dla developerów, a nie traktował ich jak pazerne ścierwo, które żeruje na ich zasobach.

Ostatnio chciałem napisać aplikację z wykorzystaniem wrzuty (bo polskich utworów jest tam najwięcej), zrezygnowałem na rzecz YT. Jednak do wyszukiwania piosenek wolę użyć API niż parsera HTML/XML.

6. bezkarny napisał(a):
19 lipca 2010, 14:44:02

pobierasz pliki (mp3) w jakosci 128kbps - zawsze. A uploadowac mogl np. 640kbps lub FLAC 3,000kbps. Dlatego roznica.

7. malpka napisał(a):
21 lipca 2010, 10:03:34

A ja korzystam z wtyczki MP3 Saver do Proxy+ i sobie chwalę;) Jak sama nazwa wskazuje zapisuje na dysk wszystkie mp3 które przechodzą przez proxy, postawionym na lokalnym komputerze. Korzysta z MIME do rozpoznawania typu pliku, odczytuje ID3 v1, automatycznie nazywa pliki i grupuje je w katalogi. No i nie jest ograniczony tylko do wrzuty. Zrzut z ustawień

8. pobieranie z wrzutya napisał(a):
22 lipca 2010, 18:09:43

z tego co widzę strony do ściągania z wrzuty sobie z tym problemem poradziły. dwrzuta.pl mi działa bardzo dobrze.

9. tomek napisał(a):
23 lipca 2010, 22:11:14

jak ominąć blokadę IP ?
bo mi zablokowali IP :(

chyba tylko applet JAVY zostaje ?

ale na javie się nie znam i nie wiem jak to ugryźć
może ma ktoś kod do tego ?
w PHP to jest proste więc pewnie i w JAVIE to nie jest jakiś skomplikowany kod ?

10. djexx napisał(a):
09 sierpnia 2010, 19:30:25

jak dokładnie przywrócić wyszukiwarkę do życia bo trochę nie zrozumiałe to dla mnie

11. Scout napisał(a):
22 sierpnia 2010, 16:07:23

Myślę, że też we flashu można by zrobić narzędzie do pobierania - flash uruchamia się po stronie klienta, wydaje mi się, że inicjalizuje się szybciej niż aplikacja w java i że więcej komputerów ma flasha niż javę.

12. piston napisał(a):
08 września 2010, 16:39:27

a mi na stronach wrzuty nawet nie chce zagrać, brak buforowania. Używam mozilli, na chrome też nie działa. Kilka osób ma podobnie. Gdzie leży problem?
:)

Dodaj komentarz: