List of usage examples for org.jsoup.nodes Document getElementById
public Element getElementById(String id)
From source file:com.liato.bankdroid.banking.banks.Hors.java
@Override public void update() throws BankException, LoginException, BankChoiceException, IOException { super.update(); urlopen = login();//from w ww. j av a2 s . c om Document document = Jsoup.parse(response); Element balanceElement = document.getElementById("cphMain_lblAmount"); if (balanceElement == null) { throw new BankException( res.getText(R.string.unable_to_find).toString() + res.getText(R.string.balance).toString()); } Element nameElement = document.getElementById("lblCardName"); String accountName = nameElement == null ? NAME.toUpperCase() : nameElement.text(); if (this.getCustomName().isEmpty()) { this.setCustomName(accountName); } Account account = new Account(accountName, Helpers.parseBalance(balanceElement.text()), "0"); accounts.add(account); balance = balance.add(account.getBalance()); document = Jsoup.parse(urlopen.open("https://www.dittkort.se/q/Partial/Transactions.aspx?cnt=20")); Elements transactionElements = document.select("tr"); List<Transaction> transactions = new ArrayList<Transaction>(); if (transactionElements != null) { for (Element element : transactionElements) { transactions.add(asTransaction(element)); } } account.setTransactions(transactions); super.updateComplete(); }
From source file:com.liato.bankdroid.banking.banks.AbsIkanoPartner.java
@Override protected LoginPackage preLogin() throws BankException, ClientProtocolException, IOException { urlopen = new Urllib(context, CertificateReader.getCertificates(context, R.raw.cert_ikanopartner)); response = urlopen.open("https://partner.ikanobank.se/web/engines/page.aspx?structid=" + structId); Document d = Jsoup.parse(response); Element viewstate = d.getElementById("__VIEWSTATE"); if (viewstate == null || TextUtils.isEmpty(viewstate.val())) { throw new BankException(res.getText(R.string.unable_to_find).toString() + " ViewState."); }/*w w w . j a va2s. c o m*/ Element eventvalidation = d.getElementById("__EVENTVALIDATION"); if (eventvalidation == null || TextUtils.isEmpty(eventvalidation.val())) { throw new BankException(res.getText(R.string.unable_to_find).toString() + " EventValidation."); } Element userField = d.select("#LoginSpan input[type=text]").first(); Element passField = d.select("#LoginSpan input[type=password]").first(); Element submitField = d.select("#LoginCustomerDiv input[type=submit]").first(); if (userField == null || passField == null || submitField == null) { throw new BankException(res.getText(R.string.unable_to_find).toString() + " login fields."); } List<NameValuePair> postData = new ArrayList<NameValuePair>(); postData.add(new BasicNameValuePair("__VIEWSTATE", viewstate.val())); postData.add(new BasicNameValuePair("__EVENTVALIDATION", eventvalidation.val())); postData.add(new BasicNameValuePair(userField.attr("name"), username)); postData.add(new BasicNameValuePair(passField.attr("name"), password)); postData.add(new BasicNameValuePair(submitField.attr("name"), submitField.val())); return new LoginPackage(urlopen, postData, response, "https://partner.ikanobank.se/web/engines/page.aspx?structid=" + structId); }
From source file:org.keycloak.testsuite.util.saml.LoginBuilder.java
/** * Prepares a GET/POST request for logging the given user into the given login page. The login page is expected * to have at least input fields with id "username" and "password". * * @param user/*from ww w . j a va 2s. c o m*/ * @param loginPage * @return */ private HttpUriRequest handleLoginPage(String loginPage, URI currentURI) { if (idpAlias != null) { org.jsoup.nodes.Document theLoginPage = Jsoup.parse(loginPage); Element zocialLink = theLoginPage.getElementById("zocial-" + this.idpAlias); assertThat("Unknown idp: " + this.idpAlias, zocialLink, Matchers.notNullValue()); final String link = zocialLink.attr("href"); assertThat("Invalid idp link: " + this.idpAlias, link, Matchers.notNullValue()); return new HttpGet(currentURI.resolve(link)); } return handleLoginPage(user, loginPage); }
From source file:com.astrientlabs.nyt.NYT.java
public String extractImageURL(int session, String memberType, String name) throws IOException { String url = "http://memberguide.gpo.gov/" + session + "/" + memberType + "/" + name; try {/* w w w . j ava 2 s . c o m*/ Connection c = Jsoup.connect(url); c.userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.1) Gecko/20100101 Firefox/10.0.1"); Document doc = c.get(); doc.normalise(); Element content = doc.getElementById("ctl00_ContentPlaceHolder1_pic"); if (content != null) { String src = content.attr("src"); //System.out.println(src + " vs " + doc.baseUri()); if (src != null) { URL u = new URL("http://memberguide.gpo.gov/" + session + "/" + memberType + "/" + src); return u.toString(); } } } catch (Exception e) { e.printStackTrace(); } return null; }
From source file:autoInsurance.BeiJPingAnImpl.java
public String login(String in) { String out = ""; JSONObject jsonObject = JSONObject.fromObject(in); String ukey = jsonObject.getString("ukey"); String loginName = jsonObject.getString("loginName"); String password = jsonObject.getString("password"); String url = "https://icore-pts.pingan.com.cn/ebusiness/auto/newness/toibcswriter.do?transmitId=apply"; String retStr = httpClientUtil.doPost(url, new HashMap(), charset); Document doc = Jsoup.parse(retStr); Element script_umlogin = doc.getElementById("script_umlogin"); if (null != script_umlogin) { url = "https://icore-pts.pingan.com.cn/ebusiness/j_security_check"; Map<String, String> paramMap = new HashMap<String, String>(); paramMap.put("j_username", loginName); paramMap.put("j_password", password); paramMap.put("SMAUTHREASON", "0"); paramMap.put("randCode", ""); retStr = httpClientUtil.doPost(url, paramMap, charset); doc = Jsoup.parse(retStr);/* w w w.ja v a2 s . c o m*/ String title = doc.title(); if (title.startsWith("")) { url = "https://icore-pts.pingan.com.cn/ebusiness/auto/newness/toibcswriter.do?transmitId=apply"; retStr = httpClientUtil.doPost(url, new HashMap(), charset); doc = Jsoup.parse(retStr); FormElement form = (FormElement) doc.getElementById("workbenchIBCSAppForm"); List<KeyVal> datas = form.formData(); paramMap = new HashMap<String, String>(); for (KeyVal kv : datas) { paramMap.put(kv.key(), kv.value()); } paramMap.put("dealerCodes", ""); url = "https://icorepnbs.pingan.com.cn/icore_pnbs/do/usermanage/systemTransfer"; retStr = httpClientUtil.doPost(url, paramMap, charset); doc = Jsoup.parse(retStr); title = doc.title(); if ("".equals(title)) out = "{\"success\": true, \"msg\": \"" + loginName + "," + paramMap.get("userName") + ",\"}"; } } else { FormElement form = (FormElement) doc.getElementById("workbenchIBCSAppForm"); if (null != form) { return "{\"success\": false, \"msg\": \"!\"}"; } } return out; }
From source file:com.ufukuzun.myth.dialect.bean.Myth.java
public <T> AjaxResponse response(AjaxRequest<T> form, String viewName, ModelMap modelMap, HttpServletResponse response, HttpServletRequest request) { AjaxResponse ajaxResponse = new AjaxResponse(); for (RequestUpdate eachRequestUpdate : form.getUpdate()) { if (StringUtils.isNotBlank(eachRequestUpdate.getRenderFragment())) { String decodedRenderFragment = new String( Base64.decodeBase64(eachRequestUpdate.getRenderFragment())); if (StringUtils.isNotBlank(decodedRenderFragment) && !eachRequestUpdate.getUpdates().isEmpty()) { String processResult = process(viewName, decodedRenderFragment, modelMap, request, response); Document document = parse(processResult); for (String eachId : eachRequestUpdate.getUpdates()) { Element element = document.getElementById(eachId); String content = element != null ? element.toString() : ""; ajaxResponse.add(eachId, content); }/* ww w . j av a 2 s. co m*/ } } } return ajaxResponse; }
From source file:com.liato.bankdroid.banking.banks.Hemkop.java
@Override protected LoginPackage preLogin() throws BankException, ClientProtocolException, IOException { urlopen = new Urllib(context, CertificateReader.getCertificates(context, R.raw.cert_hemkop)); urlopen.setAllowCircularRedirects(true); response = urlopen.open("https://www.hemkop.se/Mina-sidor/Logga-in/"); Document d = Jsoup.parse(response); Element e = d.getElementById("__VIEWSTATE"); if (e == null || e.attr("value") == null) { throw new BankException(res.getText(R.string.unable_to_find).toString() + " ViewState."); }//ww w . j av a 2 s. c o m String viewState = e.attr("value"); e = d.getElementById("__EVENTVALIDATION"); if (e == null || e.attr("value") == null) { throw new BankException(res.getText(R.string.unable_to_find).toString() + " EventValidation."); } String eventValidation = e.attr("value"); List<NameValuePair> postData = new ArrayList<NameValuePair>(); postData.add(new BasicNameValuePair("__EVENTTARGET", "ctl00$MainContent$BtnLogin")); postData.add(new BasicNameValuePair("__EVENTARGUMENT", "")); postData.add(new BasicNameValuePair("__VIEWSTATE", viewState)); postData.add(new BasicNameValuePair("__SCROLLPOSITIONX", "0")); postData.add(new BasicNameValuePair("__SCROLLPOSITIONY", "266")); postData.add(new BasicNameValuePair("__EVENTVALIDATION", eventValidation)); postData.add(new BasicNameValuePair("ctl00$uiTopMenu$Search", "")); postData.add(new BasicNameValuePair("ctl00$MainContent$tbUsername", username)); postData.add(new BasicNameValuePair("ctl00$MainContent$tbPassword", password)); return new LoginPackage(urlopen, postData, response, "https://www.hemkop.se/Mina-sidor/Logga-in/"); }
From source file:jobhunter.monster.Client.java
public Job execute() throws IOException, URISyntaxException { l.debug("Connecting to {}", url); update("Connecting", 1L); final Document doc = Jsoup.connect(url).get(); update("Parsing HTML", 2L); final Job job = Job.of(); job.setPortal(MonsterPlugin.portal); job.setLink(url);//from w w w . j av a 2 s . c o m final Element form = doc.getElementById("forApply"); job.setPosition(form.getElementById("jobPosition").attr("value")); job.setAddress(form.getElementById("jobLocation").attr("value")); job.setExtId(form.getElementById("jobID").attr("value")); job.getCompany().setName(form.getElementById("jobCompany").attr("value")); job.setDescription(StringEscapeUtils.unescapeHtml4(doc.getElementById("TrackingJobBody").html())); update("Done", 3L); return job; }
From source file:com.dajodi.scandic.JSoupScraper.java
@Override public MemberInfo scrapeMemberInfo(InputStream inStream) { Document doc; try {/*from w w w. j av a2s.c o m*/ doc = Jsoup.parse(inStream, HTTP.UTF_8, ""); Element accountOverview = doc.getElementById("AccountOverview"); String points = getStringFromNode(accountOverview, "ctl00_MainBodyRegion_AccountOverview1_totalPoints", "?"); String membershipNumber = getStringFromNode(accountOverview, "ctl00_MainBodyRegion_AccountOverview1_membershipNo", "?"); String membershipLevel = getStringFromNode(accountOverview, "ctl00_MainBodyRegion_AccountOverview1_memberLevel", "?"); String nights = getStringFromNode(accountOverview, "ctl00_MainBodyRegion_AccountOverview1_strngNights", "?"); int qualNights = Util.UNKNOWN_NIGHTS; if ("?".equals(nights)) { boolean noTransactions = accountOverview .select("#ctl00_MainBodyRegion_AccountOverview1_NoTransaction").size() == 1; if (noTransactions) { // as expected qualNights = Util.NO_NIGHTS; } else { Log.d("somethign really strange, number of nights could not be found"); } } else { qualNights = Util.parseNumNights(nights); } MemberInfo.Level level = MemberInfo.Level.fromEnglishText(membershipLevel); List<ScandicStay> stays = getStays(accountOverview); MemberInfo memberInfo = new MemberInfo(); memberInfo.setMembershipId(membershipNumber); memberInfo.setLevel(level); memberInfo.setPoints(Util.parseInt(points, Util.UNKNOWN_POINTS)); memberInfo.setQualifyingNights(qualNights); memberInfo.setStaysLast12Months(stays); memberInfo.setLastUpdated(new Date()); return memberInfo; } catch (IOException e) { throw new ScandicHtmlException(e); } }
From source file:com.liato.bankdroid.banking.banks.Bioklubben.java
@Override public void update() throws BankException, LoginException, BankChoiceException { super.update(); if (username == null || password == null || username.length() == 0 || password.length() == 0) { throw new LoginException(res.getText(R.string.invalid_username_password).toString()); }//w w w .ja va 2 s .c o m urlopen = login(); try { Document d = Jsoup .parse(urlopen.open("http://bioklubben.sf.se/MyPurchases.aspx?ParentTreeID=1&TreeID=1")); Element e = d.getElementById("ctl00_ContentPlaceHolder1_BonusPointsLabel"); if (e == null) { throw new BankException(res.getText(R.string.unable_to_find).toString() + " points element."); } BigDecimal b = Helpers.parseBalance(e.text()); Account a = new Account("Pong", b, "1"); a.setCurrency(context.getString(R.string.points)); accounts.add(a); balance = balance.add(a.getBalance()); Elements es = d.select(".GridViewStd_Item,.GridViewStd_ItemAlt"); List<Transaction> transactions = new ArrayList<Transaction>(); if (es != null) { for (Element el : es) { transactions.add(new Transaction(el.child(0).text().trim(), el.child(1).text().trim(), Helpers.parseBalance(el.child(2).text()))); } } a.setTransactions(transactions); } catch (IOException e) { if (e == null) { throw new BankException(e.getMessage()); } } if (accounts.isEmpty()) { throw new BankException(res.getText(R.string.no_accounts_found).toString()); } super.updateComplete(); }