Java用JSoup元件提取asp.net webform開發網頁的viewstate相關相關引數

rgqancy發表於2016-11-17
    /**
     * 從頁面中提取特定input的的Value
     * @param formparams
     * @param document
     * @param elementId
     */
    private void addFormHiddenElementValue(List<BasicNameValuePair> formparams,
            Document document, String elementId) {
        Element element = document.getElementById(elementId);
        if(element != null){
            String elementValue = element.attr("value");
            formparams.add(new BasicNameValuePair(elementId,elementValue));
        }
    }
    /**
     * 取得對應URL的Document例項
     * @param url
     * @return
     */
    private static Document getDocument(String url) {
        Document document = null;
        try {
            document = Jsoup.connect(url).get();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return document;
    }
        Document document = getDocument(url);
        if(document != null){
            List<String> elementIds = new ArrayList<String>();
            elementIds.add("__VIEWSTATE");
            elementIds.add("__VIEWSTATEGENERATOR");
            elementIds.add("__EVENTVALIDATION");
            for(String elementId : elementIds){
                addFormHiddenElementValue(formparams, document, elementId);
            }
        }

 

相關文章