HttpClient模拟ajax提交
这几天开始做一些爬虫方面的东西,但是在解析页面是碰到了分页数据的爬取问题,如果分页是get方式的url还好,但是如果是Post方式的ajax提交那就感觉比较纠结
思路:
因为是post所以首先想到使用Post的参数方式来做:
public String doHttpSend(String keyWord,String searchType,int pageNum) throws Exception{PostMethod method = null;try{HttpClient client = getHttpClient();method = new PostMethod(SEARCH_URL);method.addRequestHeader("connection","keep-alive");NameValuePair[] params = new NameValuePair[]{new NameValuePair("keyWord",keyWord),new NameValuePair("page",String.valueOf(pageNum))}; method.addParameters(params);int statusCode = client.executeMethod(method);if(statusCode != HttpStatus.SC_OK){return null;}System.out.println(method.getResponseBodyAsString());return method.getResponseBodyAsString();}finally{if(null != method){method.releaseConnection();}}}