2011-01-12 6 views
2

YouTube에서 .flv 비디오를 다운로드하여 하드 드라이브에 저장하는 방법을 쓰고 있습니다. 모든 것을 다 읽고 소스 코드를 사용할 수 있지만 포럼을 읽었지만 코드를 작동시킬 수는 없습니다. YouTube가이 기능을 삭제했으며 더 이상 동영상을 다운로드 할 수 없다고 생각합니다. 그러나 다음 질문이 나온다 : 어떤 프로그램은 자유롭고 상업적으로 어떻게 하는가?C++로 youtube video를 다운로드

WebClient^ client = gcnew WebClient(); 

String^ page = client->DownloadString(URL); 

    String^ videoId = innerValue(URL, "v=", "&"); 

    String^ details = client->DownloadString("http://www.youtube.com/get_video_info?&video_id=" + videoId); 

    String^ t1 = innerValue(page, "&t=", "&"); 

    String^ t2 = HttpUtility::UrlDecode(innerValue(details, "&token=", "&")); 

    String^ videoUrl = String::Format("http://www.youtube.com/get_video?video_id={0}&t={1}&fmt={2}", videoId, t2, fmt); 

    client->DownloadFile(videoUrl, gcnew String(file)); 

InnerValue 방법은 바로이 PARAMS 사이에있는 텍스트를 가져옵니다

여기 내 코드입니다. 아무리 "t1"또는 "t2"를 사용하더라도 여전히 작동하지 않습니다!

내가 뭘 잘못했는지 알려주시겠습니까?

감사

브라우저를 사용하여 형성하는 URL을 다운로드 할 수

답변

0

시도합니다. 작동하는 경우 요청을 보낼 때 사용자 에이전트 설정을 스푸핑해야 할 수 있습니다.

+0

작동하지 않습니다. 동일한 404 찾을 수 없음을 말합니다. – oaksoft

+0

그러면 분명히 응용 프로그램에서 작동하지 않습니다. flv URL이 생성되는 방식을 찾으십시오. –

관련 문제