Нужно мне скачивание видео с ютуба на сайте
Пару дней назад работало (адреса видюх лежат в vars), а сейчас ютуб привязывает ссылку на файлы к ip посетителя. То есть показать юзеру ссылку, чтобы он сам перешёл по ней и началось скачивание, теперь не получится.
Никто не знает случайно, может есть где прямые ссылки/обходные пути?
А то скачивать файлы к себе на сервер и потом их отдавать - слишком затратно
добавлено спустя 3 минуты:
Анализируя страницы youtube с разных ip, получил несколько примеров vars (всего четыре примера).
В нижеприведённом куске дампа значений сверху массив с одинаковыми значениями, снизу все массивы без одинаковых значений.
Ни у кого нет идей, что они значат?)
Array
(
[expire] => 1365045561
[gcr] => ru
[id] => f5b664a7bab5f5fd
[ipbits] => 8
[itag] => 46
[key] => yt1
[ms] => au
[newshard] => yes
[ratebypass] => yes
[source] => youtube
[sparams] => cp,gcr,id,ip,ipbits,itag,ratebypass,source,upn,expire
[sver] => 3
)
Array
(
[youtube] => Array
(
[cp] => U0hVSlBPU19LS0NONV9ISVdGOnhaMWFTRzhETUts
[fexp] => 900148,914016,932000,906383,902000,919512,929903,925714,931202,900821,900823,931203,931401,906090,909419,908529,930807,919373,930803,906836,920201,929602,930101,926403,900824,910223
[ip] => 95.182.92.187
[mt] => 1365020418
[mv] => m
[signature] => 992E0D96919DAC42A5325B0EE1A20621E9BD5F98.D8C15C9872493D7B63E50D0C97114E3FE9805EEF
[title] => PSY - GANGNAM STYLE (강남스타일) M-V
[upn] => r_yYXpQ8FMs
)
[localhost.2] => Array
(
[cp] => U0hVSlBPU19LS0NONV9ISVdGOkZkTjN6QVJhZUt0
[fexp] => 907050,901481,919364,906941,916623,932000,932004,906383,902000,919512,929903,925714,931202,900821,900823,931203,931401,909419,908529,930807,919373,930803,906836,920201,929602,930101,900824,910223
[ip] => 95.182.92.187
[mt] => 1365020840
[mv] => m
[signature] => 5ADDEBA2B9210FDFAFD1595C2018D12D27B31D00.6A0E366A28A4FAB50D8E6AB0EC36DB11B2BB31CC
[title] => PSY - GANGNAM STYLE (강남스타일) M/V
[upn] => x_zBMpoEL9A
)
[localhost] => Array
(
[cp] => U0hVSlBPU19LS0NONV9ISVdGOk5hRFpFMmVFRkk5
[fexp] => 900065,902543,932000,906383,902000,919512,929903,925714,931202,900821,900823,931203,931401,909419,908529,930807,919373,930803,906836,920201,929602,930101,926403,900824,910223
[ip] => 95.182.92.187
[mt] => 1365020722
[mv] => m
[signature] => A513CAB4F6B3254FECF709144AD6E8F90BD78D20.709F6D4B1E6F8FE9ECB77A842F6B23D8D7760000
[title] => PSY - GANGNAM STYLE (강남스타일) M/V
[upn] => pohO2GlSlzI
)
[otherip] => Array
(
[cp] => U0hVSlBPU19LS0NONV9ISVdGOnV6anNaTmRnSTBk
[fexp] => 912510,906439,914000,916625,913807,902545,932000,932004,906383,902000,919512,929903,925714,931202,900821,900823,931203,931401,912512,909419,908529,930807,919373,930803,906836,920201,929602,930101,900824,910223
[ip] => /*замазано*/
[mt] => 1365019224
[mv] => u
[signature] => 08FD17CBDE14D1EF73D7BCC12E20E10BDB7B60C0.14AB4579BD04A675B2178DCCD118DCA148D0704F
[title] => PSY - GANGNAM STYLE (강남스타일) M/V
[upn] => -sY1BcPfbio
)
)
добавлено спустя 29 минут:
Методом перебора удалось выяснить, что для скачивания при запросе к серверу обязательные поля:
&itag=37
&ipbits=8
&cp=U0hVSlBPVV9OUUNONV9ISVlJOmRaMWFTRzhGUE5y
&ip=95.182.92.187
&upn=xivzZUY4hd0
&source=youtube
&ratebypass=yes
&sparams=cp%2Cid%2Cip%2Cipbits%2Citag%2Cratebypass%2Csource%2Cupn%2Cexpire
&id=02b402388d08c4d6
&expire=1365047897
&key=yt1
&signature=18667364D00FE5C2BC7B4D822270413E1DFF8148.C028A36582634414C6737C4DE833AC80BD11D7D7
Из них различающиеся только три:
&cp=U0hVSlBPVV9OUUNONV9ISVlJOmRaMWFTRzhGUE5y
&signature=18667364D00FE5C2BC7B4D822270413E1DFF8148.C028A36582634414C6737C4DE833AC80BD11D7D7
&upn=xivzZUY4hd0
Поле "cp" показалось мне base64-закодированным, каким оно и оказалось.
base64_decode(U0hVSlBPVV9OUUNONV9ISVlJOmRaMWFTRzhGUE5y) = SHUJPOU_NQCN5_HIYI:dZ1aSG8FPNr
Остальные (эти четыре для другого видео)
base64_decode(U0hVSlBPU19LS0NONV9ISVdGOnhaMWFTRzhETUts) = SHUJPOS_KKCN5_HIWF:xZ1aSG8DMKl
base64_decode(U0hVSlBPU19LS0NONV9ISVdGOkZkTjN6QVJhZUt0) = SHUJPOS_KKCN5_HIWF:FdN3zARaeKt
base64_decode(U0hVSlBPU19LS0NONV9ISVdGOk5hRFpFMmVFRkk5) = SHUJPOS_KKCN5_HIWF:NaDZE2eEFI9
base64_decode(U0hVSlBPU19LS0NONV9ISVdGOnV6anNaTmRnSTBk) = SHUJPOS_KKCN5_HIWF:uzjsZNdgI0d
Как можно заметить, первая половинка (до двоеточия) у одного и того же видео не меняется.
добавлено спустя 1 минуту:
Также скорее всего поля "upn" и вторая половинка от "cp" являются какими-то внутренними индикаторами на youtube, т.к имеют длину 11 символом и характерный алфавит.
Тоже интересует вопрос, как в javascript можно получить страницу в строку, а затем спарсить нужное.
04 Апр 2013, 5:50