2011-10-05 5 views
0

Android 앱에서 사용하기 위해 웹 페이지에서 정보를 가져 오려고합니다. 정보 (노래 제목)가 소스에 동적으로 추가 된 것처럼 보입니다. 소스에서 자리 표시 자 (태그 사용)가 있습니다. 브라우저는 물론 적절한 노래 제목을 표시합니다.App에서 동적으로 생성 된 웹 콘텐츠에 액세스하는 방법은 무엇입니까?

내 앱에서 동적으로 생성 된 정보를 손에 넣는 방법에 대한 지침을 찾고 있습니다.

감사합니다,

- 정보를 얻을 방법 조엘

+0

webapp에서 생성 된 웹 페이지에서 데이터를 가져 오려고합니까? 또는 webapp의 소스 코드에 액세스 할 수 있습니까? 아니면 API가 있습니까? 전자의 경우 페이지를 고치고 필드 정보를 꺼내는 것이 좋습니다. 세부 사항은 매우 유용 할 것입니다. – birryree

+0

기본적으로 : webapp은 라디오 방송국에서 음악을 재생하고 현재 노래의 이름과 기타 관련 정보를 보여줍니다. 이 정보는 음악이 변경되면서 업데이트됩니다. 나는 현재 재생중인 노래의 이름을 손에 넣으려고 시도하고있다 (또는 앱이 다과를 요청할 때마다). –

+2

* "앱에서 음료수 마실 것을 요청할 때마다"* - 좋아요, 그래서 우리는 기계를 걱정하지 않고 ** 아침 식사를합니다. ** 이제는 ** 아침 식사도 묻고 있습니까? –

답변

2

은 먼저 파악해야한다. Javascript를 통해 AJAX를 사용하여 가져온 것일 가능성이 가장 높습니다. 그 스크립트를 한번보세요.

일단 알았 으면 Java 코드에서 스크립트의 동작을 재현 할 수 있습니다 (적절한 주소, 동일한 메소드/매개 변수 등을 요청).

예를 들어, 스크립트가 난독하다는 점은 불가능합니다. WebView에서 URL을로드하고 적절한 AJAX에 자신을 연결하면 항상 좋을 것입니다. WebView의 자바 인터페이스를 사용하여 요청; 또는 요청이 완료된 후에 정보를로드하고 검색하도록하십시오.

+0

HTML에서 호출되는 스크립트를 식별하는 방법은 무엇입니까? –

+2

@Boswell - 자바 스크립트 코드가 HTML 안에 포함되어 있습니다 (결국 클라이언트 쪽입니다). Chrome의 내장 개발자 도구 또는 Firebug for Firefox 등을 사용하면 더 편하게 시간을 가질 수 있습니다. – birryree

+0

@birryree 감사합니다. Chrome 개발자. 도구를 사용하면 원하는 정보가 들어있는 토큰 카드로 안내되었습니다. –

0

노래 데이터가 오디오 스트림에 임베드 될 수 있으므로 디코더/플레이어가 해당 정보를 추출 할 수 있어야합니다.

+0

이 시점에서 제 소프트웨어는 오디오에 관심이 없으며 단지 메타 데이터에만 관심이 있습니다. 보다 저렴한 비용은 무엇입니까? 오디오 스팀을로드하거나 웹 페이지를로드하고 파싱하는 것입니까? –

+0

웹 페이지. 오디오 스트림을 모니터링하고 자바 스크립트를 통해 노래 제목/etc를 설정하지 않는다고 가정합니다. 오디오 스트림을 모니터링하는 이점은 웹 페이지를 긁어 모으지 않고 재생을 시작하자 마자 "새로운"노래 데이터를 표시 할 수 있다는 것입니다. – James

관련 문제