마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Jsoup get() 호출 시 발생하는 StackOverflow 오류

0 추천

웹 크롤링 경험이 많이 없는 입문자입니다. Jsoup이 어디까지 가능한지 잘 모르고 있고, 또, 오류 내용 이해가 명확하지 않아 어떤 방향으로 해결을 모색해야 맞는 것인지 막막한 상황입니다.

제가 받게 된 오류 메시지는 'java.lang.stackoverflowerror' exception. cannot evaluate org.jsoup.nodes.Document.toString() 이고 다음 코드를 수행하면서 발생합니다.

 

Document document = Jsoup.connect(url).get();

 

위 코드에서 사용된 url은 csv 데이터 파일을 다운로드 할 수 있는 동적 다운로드 링크 입니다. 다이렉트 링크가 아닙니다. 다운로드 되는 csv 파일은 크기가 1MB에 못미치고요. 작업 중인 프로젝트의 테스트 기기로 안드로이드 스튜디오의 가상머신 1개와 블루스택을 사용하고 있는데, 당황스러운 점은 이 오류가 블루스택에서만 발생한다는 것입니다.

질문 1. 위 오류 메시지는 어떠한 경우 발생하는 것인가요?
고작 1MB 크기의 데이터로 StackOverflow라니, Jsoup의 get()에서 재귀적으로 동작하는 부분이 있고, 그 부분에서 문제가 생긴 것이 아닌가 막연히 추정만 하고 있습니다.

질문 2. 어떤 방향으로 해결을 해야 할까요?
전혀 감을 못잡고 있습니다. 애초에 HTML이 아니라 파일을 Document에 때려넣은 것 자체가 문제의 시작인지도 모르겠습니다. (안드로이드 가상머신에서는 잘 동작합니다만...) 만약 맞다면 동적 다운로드 링크에서 제공하는 파일은 보통 어떤 식으로 받는지 힌트 좀 주시면 감사하겠습니다.

pigstoe (510 포인트) 님이 2023년 7월 28일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...