2017-01-16 1 views
0

나는 안드로이드 프로그래밍에 조금 익숙하다. 일부 게임 웹 사이트에서 데이터를 추출하는 Android 앱을 만들고 싶지만 json 형식으로 데이터를 가져 오는 API가 없습니다. 나는 json에서 데이터를 얻는 방법과 android studio에서 파싱하는 방법을 알고있다. 그래서 api없이 웹 사이트에서 데이터를 추출 할 수있는 방법이 있습니까? 앞서 말했듯이 프로그래밍에 익숙하지 않기 때문에 설명을 잘 보관하십시오.API없이 웹 사이트의 데이터를 Android 앱에 추출하는 방법은 무엇입니까?

답변

0

설명이 약간 복잡합니다. JSoup 라이브러리를 사용하면 웹 사이트를 가져오고 DOM의 여러 부분을 가져올 수 있습니다. 매우 간단하며 XPATH 구문을 사용하여 DOM을 탐색 할 수 있습니다.

당신은 자신의 홈페이지에 예를 찾을 수 있습니다

Document doc = Jsoup.connect("http://en.wikipedia.org/").get(); 
Elements newsHeadlines = doc.select("#mp-itn b a"); 

이 그럼 당신은 당신이 필요로 수용해야합니다. 이 접근 방식은 웹 사이트보기를 기반으로 논리를 개발하기 때문에 최선의 방법이 아니므로 자신의보기를 변경하면 코드가 실패합니다.

+0

서버의 데이터를 응용 프로그램의 클라이언트로 구문 분석하는 API에 대해 들어 봤습니다. "Your Server"의 의미가 무엇인지 알고 싶습니다. Firyher, 다양한 게임 사이트의 데이터를 저장하는 자체 서버를 사용할 수 있습니까? – pulkit

+0

그들은 원격 게임 데이터를 구문 분석하는 서버 측 응용 프로그램을 구현할 것을 제안합니다. 그런 다음 서비스를 노출하여 고객 앱에서 전화를 걸 수 있습니다. 이 방법으로 당신은 하나의 파싱 애플리케이션을 작성하고 서버에 저장해야한다. – firegloves

1

대부분 당신은 그렇지 않습니다. 당신이 할 수있는 최선의 방법은 화면 스크래핑 (screen scrape)입니다. 웹 사이트를 다운로드하고 HTML의 구문 분석을 통해 화면의 특정 영역을 찾습니다. 이것에 대한 문제는 그들이 html을 조금이라도 바꿀 때마다 당신의 앱이 망가질 것입니다. 그래서 매우 추천하지 않습니다. 대신 API가있는 대체 정보 소스를 찾거나 아이디어를 스크랩하는 것이 좋습니다.

관련 문제