정적 인 블로그 페이지에서 html을 다운로드하여 관련 데이터를 가져 와서 사용할 수 있습니다. 비동기 프로 시저의 경우 robospice library을 사용하고 있습니다.RoboSpice를 사용하여 html 소스를 다운로드하는 방법은 무엇입니까?
것, 즉 내가 전체 HTML 소스를 다운로드하는 데 사용해야 요청
<?xml version="1.0" encoding="UTF-8"?>
, 나는 단지 HTML의 첫 번째 라인을 얻을 SimpleTextRequest를 사용하여 무엇입니까? 샘플에서 비슷한 것을 찾지 못했습니다. 그리고 "robospice"를 검색하는 것이 대부분 소스 코드로 이어지기 때문에이 라이브러리에 대한 자습서가 거의없는 것처럼 보입니다.
UPDATE :
public class HtmlRequest extends SpiceRequest<String> {
private static String reqUrl;
public HtmlRequest(String url) {
super(String.class);
reqUrl = url;
aLog.d("HtmlRequest.HtmlRequest url : " + url);
}
@Override
public String loadDataFromNetwork() throws Exception {
String html = "";
HttpClient httpClient = new DefaultHttpClient();
StringBuilder builder = new StringBuilder();
HttpGet get = new HttpGet(reqUrl);
HttpResponse response = httpClient.execute(get);
StatusLine statusLine = response.getStatusLine();
int statusCode = statusLine.getStatusCode();
aLog.d("HtmlRequest.loadDataFromNetwork statusCode : " + statusCode);
if (statusCode == 200) {
/*
* Si todo fue ok, montamos la String con el HTML
*/
HttpEntity entity = response.getEntity();
InputStream content = entity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(content));
String line;
while ((line = reader.readLine()) != null) {
aLog.d("HtmlRequest.loadDataFromNetwork line : " + line);
builder.append(line);
}
html = builder.toString();
aLog.d("HtmlRequest.loadDataFromNetwork html : " + html);
}
httpClient.getConnectionManager().shutdown();
return html;
}
}
그런 다음 내 활동에 나는
spiceManager.execute(htmlRequest, "text", DurationInMillis.NEVER, new StaticItemRequestListener());
이 그럼에도 불구하고 나는에 설정 한 로그를 전혀 얻을 : 첫 번째 대답 Inspiredby,이 정의 spicerequest을 만들었습니다 내 사용자 지정 요청, 생성자 메서드에서 하나.
사실 : htmlRequest가 실행되고 있지는 않지만 여전히 xml 헤더가 있습니다. 나는 너무 틀린 일을해야하고 아직 그것을 볼 수 없다. ...
와 나는 같은 결과 를 얻을 : 서버에 HTML 버전을 물어보십시오 xml version = "1.0"encoding = "UTF-8"?> ' – Frank
다른 헤더를 추가하려고합니다. 해당 페이지를 방문 할 때 브라우저에서 보낸 헤더를 확인하여 요청에 추가하십시오. – rciovati
나는 동일한 spicemanager와 동일한 활동 2 개의 다른 요청을 사용했다. 두 번째 것은 항상 저에게 결과를위한 우스운 표제를 줄 것입니다. 한 요청 만 시작하면 괜찮습니다. – Frank