2013-01-19 3 views
0

저는 YouTube 비디오를 다운로드하는 앱을 작성하고 있는데, 문제가 있습니다. 전체 YouTube 링크의 HTML 코드를 다운로드 할 수 없습니다.

당신이 알고 있겠지만

는 youtuube에서 각 비디오 링크는 동영상에 직접 링크가 포함되어 있습니다. 페이지가 플래시 flayer를 사용하는 경우 (html5 정도가 아닌) 플래시 객체에 저장됩니다 (flashvar attr에 있음). 내 앱은 플래시 객체를 구문 분석하고 그 직접 링크 (사용 가능한 각 동영상 품질에 대해 하나의 링크)를 추출합니다.

나는 비디오의 HTML 코드를 다운로드 (예를 들어, http://www.youtube.com/watch?v=VIDEOID)하고이를 분석하여 플래시 객체의 HTML 코드를 얻을.

위의 코드는하지 않습니다 :

 HttpClient client = new DefaultHttpClient(); 
     client.getParams().setParameter(CoreProtocolPNames.USER_AGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0.1)"); 

     HttpGet request = new HttpGet(url); 
     HttpResponse response = client.execute(request); 

     String html = ""; 
     InputStream in = response.getEntity().getContent(); 
     BufferedReader reader = new BufferedReader(new InputStreamReader(in)); 
     StringBuilder str = new StringBuilder(); 
     String line = null; 
     while((line = reader.readLine()) != null) 
     { 
      str.append(line); 
     } 
     in.close(); 
     html = str.toString(); 

     return html; 

가 지금은 조금 문제가있어 :

내가 여기에 HTML 코드 (비 모바일 버전) 에디터를 이용해 할 AsyncTask를를 사용하고, 내 다운로드 코드 whloe html 코드를 다운로드하십시오. 다운로드 한 HTML 문자열은 중간에 어딘가에 자르고 플래시 객체 부분을 얻지 못합니다. 이 기능은 다른 사이트에서도 잘 작동합니다!

내가 잘못 했나요?

감사합니다 :)

+1

정말 다른 사이트에서 작업 하시겠습니까? 위키 백과에서 긴 항목과 같은 큰 사이트를 사용해 보셨습니까? –

+0

위키 백과 항목을 시도했지만 둘 다 작동하지 않았습니다. 그래서 나는 이클립스를 다시 시작했고 이제는 괜찮습니다! HTML을 TextView에서 텍스트로 설정했기 때문에 어떤 이유로 든 전체 HTML을 볼 수 없었을 것입니다 ... – eviabs

+0

Glade it worked. –

답변

관련 문제