/** * Set the form element's value in each of the matched elements. * @param value The value to set into each matched element * @return this (for chaining) */ public Elements val(String value) { for (Element element : this) element.val(value); return this; }
/** * Get the form element's value of the first matched element. * @return The form element's value, or empty if not set. * @see Element#val() */ public String val() { if (size() > 0) return first().val(); else return ""; }
boolean set = false; for (Element option: options) { data.add(HttpConnection.KeyVal.create(name, option.val())); set = true; Element option = el.select("option").first(); if (option != null) data.add(HttpConnection.KeyVal.create(name, option.val())); final String val = el.val().length() > 0 ? el.val() : "on"; data.add(HttpConnection.KeyVal.create(name, val)); data.add(HttpConnection.KeyVal.create(name, el.val()));
private void getElements(Elements elements, List<Map<String, Object>> resultList) { for (Element element : elements) { Map<String, Object> result = new HashMap<>(); if(element.attributes().size() > 0) result.put("attributes", getAttributes(element)); if(!element.data().isEmpty())result.put("data", element.data()); if(element.hasText()) result.put("text", element.text()); if(!element.val().isEmpty()) result.put("value", element.val()); if(!element.tagName().isEmpty()) result.put("tagName", element.tagName()); resultList.add(result); } }
public String val() { return originElement.val(); }
public Element val(String value) { return originElement.val(value); }
public Document submitForm(Element formElement, Map<String, String> data) throws IOException { String src = formElement.attr("action"); Elements inputElements = formElement.select("input"); for (Element inputElement : inputElements) { if (!data.containsKey(inputElement.attr("name"))) { data.put(inputElement.attr("name"), inputElement.val()); } } Connection.Response response = Jsoup.connect(src).method(Connection.Method.POST).data(data).execute(); return response.parse(); }
public String parseViewStateParam(String viewstateHtml) { String stateVal = ""; Document stateHeaderDoc = Jsoup.parse(viewstateHtml); Elements elements = stateHeaderDoc.getElementsByTag("input"); for (Element element : elements) { if ("__VIEWSTATE".equals(element.attr("name"))) { stateVal = element.val(); break; } } return stateVal; }
protected void setSelectValue(Element select, String value) { for (Element opt : select.select("option")) { if (value.equals(opt.val())) { opt.attr("selected", "selected"); } else { opt.removeAttr("selected"); } } }
private String parseParamsHeader(Document doc, String key) { Elements elements = doc.getElementsByTag("input"); for (Element element : elements) { if (key.equals(element.attr("name"))) { return element.val(); } } return ""; }
@Override public Set<String> getSupportedLanguages() throws IOException { Set<String> langs = new HashSet<>(); String html = httpGet(opac_url + "/Search/Advanced", getDefaultEncoding()); Document doc = Jsoup.parse(html); if (doc.select("select[name=mylang]").size() > 0) { for (Element opt : doc.select("select[name=mylang] option")) { if (languageCodes.containsValue(opt.val())) { for (Map.Entry<String, String> lc : languageCodes.entrySet()) { if (lc.getValue().equals(opt.val())) { langs.add(lc.getKey()); break; } } } else { langs.add(opt.val()); } } } return langs; }
private String parse_option_regex(Element inputTag) { String optStr = inputTag.val(); String html = inputTag.parent().html(); String result = optStr; String regex1 = "value=\"" + optStr + "\".*?>([^<]+)"; String[] regexList = new String[]{regex1}; for (String regex : regexList) { Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(html); if (matcher.find()) { result = matcher.group(1); result = result.replaceAll(" ", " ").trim(); break; } } return result; }
Document doc = Jsoup.parse("your html") String selectedVal = null; Elements options = doc.getElementsByAttributeValue("name", "Category").get(0).children(); for (Element option : options) { if (option.hasAttr("selected")) { selectedVal = option.val(); } }
private void loadMemeOptions() { try { Document document = Jsoup.connect("https://memegen.link/").userAgent(BotConfig.USER_AGENT).get(); if (document != null) { Elements fmls = document.select(".js-meme-selector option"); if (!fmls.isEmpty()) { for (Element fml : fmls) { memeTypes.add(fml.val().toLowerCase()); } } } } catch (IOException e) { e.printStackTrace(); } } }
protected void addAdvancedSearchFields(List<SearchField> fields) throws IOException, JSONException { final String html = httpGet(getApiUrl() + "&mode=a", getDefaultEncoding()); final Document doc = Jsoup.parse(html); final Elements options = doc.select("select#adv_search_crit_0").first().select("option"); for (final Element option : options) { final SearchField field; if (SEARCH_FIELDS_FOR_DROPDOWN.contains(option.val())) { field = new DropdownSearchField(); addDropdownValuesForField(((DropdownSearchField) field), option.val()); } else { field = new TextSearchField(); ((TextSearchField) field).setHint(""); } field.setDisplayName(option.text()); field.setId(option.val()); field.setData(new JSONObject()); field.getData().put("meaning", field.getId()); fields.add(field); } }
private void login(Account account) throws IOException, OpacErrorException { Document doc = Jsoup.parse(httpGet(opac_url + "/MyResearch/Home", getDefaultEncoding())); Element loginForm = doc.select("form[name=loginForm]").first(); if (loginForm == null) return; FormBody.Builder builder = new FormBody.Builder() .add("username", account.getName()) .add("password", account.getPassword()); for (Element hidden : loginForm.select("input[type=hidden]")) { builder.add(hidden.attr("name"), hidden.val()); } if (data.has("library")) { builder.add("library_select", data.optString("library")); } doc = Jsoup.parse( httpPost(opac_url + "/MyResearch/Home", builder.build(), getDefaultEncoding())); if (doc.select(".flash-message").size() > 0 && doc.select("form[name=loginForm]").size() > 0) { throw new OpacErrorException(doc.select(".flash-message").text()); } }
private boolean verify(Verifier test, Object value) { if (test.verify(value)) { return true; } if (value instanceof Element) { Element e = (Element) value; if (test.verify(e.val())) { return true; } if (test.verify(e.text())) { return true; } if (test.verify(e.html())) { return true; } } return false; }
private boolean verify(Verifier test, Object value) { if (test.verify(value)) { return true; } if (value instanceof Element) { Element e = (Element) value; if (test.verify(e.val())) { return true; } if (test.verify(e.text())) { return true; } if (test.verify(e.html())) { return true; } } return false; }
private boolean verify(Verifier test, Object value) { if (test.verify(value)) { return true; } if (value instanceof Element) { Element e = (Element) value; if (test.verify(e.val())) { return true; } if (test.verify(e.text())) { return true; } if (test.verify(e.html())) { return true; } } return false; }
private static boolean matches(Object a, Object b) { if ($.eq(a, b)) { return true; } if (!((b instanceof String) && (a instanceof Element))) { return false; } String test = S.string(b); Element element = (Element) a; // try html String html = element.html(); if (S.eq(html, test, S.IGNORECASE)) { return true; } // try text String text = element.text(); if (S.eq(text, test, S.IGNORECASE)) { return true; } // try val String val = element.val(); if (S.eq(val, test, S.IGNORECASE)) { return true; } return false; }