2011-10-28 5 views
0

양식을 제출 한 후 데이터를 가져 오려는 PHP/HTML 페이지가 있습니다.HTML을 구문 분석 한 후 (양식을 제출 한 후)

처럼 :

  1. 열기 사이트
  2. 입력

이를 달성하는 가장 빠른 방법은 무엇입니까 내용이 내용

  • 작성
  • 구문 분석 새로운 사이트?

    나는 webview로 시작했다. 너무 많은 것들이 필요하지 않았기 때문에 나는 org.apache.http로 바꿨다. 여기

    내 코드의 일부이다 :
    HttpClient httpClient = new DefaultHttpClient(); 
        HttpPost httpPost = new HttpPost("WEBSITE NAME"); 
        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
        nameValuePairs.add(new BasicNameValuePair("THE NAME OF THE SEARCH B OX", "WORD I WANT TO BE PUT IN")); 
    
    
         httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
    
         HttpResponse response = httpClient.execute(httpPost); 
    
         HttpEntity httpEntity = response.getEntity(); 
    
    
         String sourceCode = EntityUtils.toString(httpEntity); 
    

    그래서 마지막에 httpEntity가 HTML을 가지고있다 - 그리고 나는 갇혔어요. 예를 들어 파싱하는 방법이 있습니까? 테이블을 찾고 두 번째 행의 두 번째 셀의 내용을 가져 오는 방법이 있습니까?

  • +0

    나는 웹 사이트가 어떤 방식으로 HTML을 반환 있으리라 믿고있어 -이 경우 내가 이전 믿을 TagSoup 라이브러리 (http://ccil.org/~cowan/XML/tagsoup을 채찍 것 /), 야생에서 발생하는 HTML을 읽을 수있는 SAXParser 구현 - 거친, 비정형 및 손상. 참고 : 일반적으로 Android 플랫폼에는 TagSoup 라이브러리가 숨겨져 있으므로 앱을 만들고 설치할 때 충돌 경고가 표시 될 수 있습니다. – Jens

    답변

    1

    내가 추천 할 수있는 작고 강력한 라이브러리는 HtmlCleaner (106kB, htmlcleaner.sf.net)입니다. 그것은 거의 모든 HTML을 파싱합니다. 아무리 엉망이라도 XML로 변환 한 다음 특정 부분에 액세스 할 수있게합니다. 페이지에도 좋은 예가 있습니다.

    +0

    Google에서 발견했는데 여기에있는 문제는 HTML 응답을 처리하는 HTML Cleaner (구문 분석 소스를 설정하는 방법이 없습니다) 또는 HTML 클리너 밑줄을 사용하는 방법입니다. -하지만 채워지고 제출 된 양식은 전에 구문 분석을 시작합니다. –

    관련 문제