Advertisement
Guest User

Untitled

a guest
Jun 24th, 2016
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.96 KB | None | 0 0
  1. import java.io.File;
  2. import java.io.IOException;
  3. import java.util.Arrays;
  4. import java.util.Iterator;
  5. import java.util.concurrent.TimeUnit;
  6.  
  7. import org.apache.commons.codec.binary.Base64;
  8. import org.apache.http.auth.AuthScope;
  9. import org.apache.http.auth.UsernamePasswordCredentials;
  10. import org.apache.http.client.ClientProtocolException;
  11. import org.apache.http.client.CredentialsProvider;
  12. import org.apache.http.client.methods.CloseableHttpResponse;
  13. import org.apache.http.client.methods.HttpGet;
  14. import org.apache.http.impl.client.BasicCredentialsProvider;
  15. import org.apache.http.impl.client.CloseableHttpClient;
  16. import org.apache.http.impl.client.HttpClients;
  17. import org.apache.http.protocol.BasicHttpContext;
  18. import org.apache.http.protocol.HttpContext;
  19. import org.apache.http.util.EntityUtils;
  20. import org.jsoup.Jsoup;
  21. import org.jsoup.nodes.Document;
  22. import org.jsoup.select.Elements;
  23. import org.openqa.selenium.By;
  24. import org.openqa.selenium.WebDriver;
  25. import org.openqa.selenium.WebElement;
  26. import org.openqa.selenium.chrome.ChromeDriver;
  27. import org.openqa.selenium.firefox.FirefoxDriver;
  28. import org.openqa.selenium.firefox.FirefoxProfile;
  29. import org.openqa.selenium.firefox.internal.ProfilesIni;
  30. import org.openqa.selenium.htmlunit.HtmlUnitDriver;
  31. import org.openqa.selenium.support.ui.ExpectedConditions;
  32. import org.openqa.selenium.support.ui.WebDriverWait;
  33.  
  34.  
  35. public class SiteConnector {
  36.  
  37. private static String username = "perbro";
  38. private static String password = "9704";
  39. private static String getDistrictURL = "app.di.no/app/play/edg/";
  40.  
  41. public static void main(String[] args) {
  42.  
  43. new SiteConnector().connect();
  44. }
  45.  
  46. public void connect() {
  47. System.setProperty("webdriver.chrome.driver", "/Users/adam/Downloads/chromedriver");
  48. WebDriver driver = new ChromeDriver();
  49.  
  50. driver.get("https://" + username + ":" + password + "@" + getDistrictURL);
  51.  
  52. WebElement element = driver.findElement(By.id("selectedRouteId"));
  53. element.sendKeys("8011274 (M1-5)");
  54.  
  55. WebElement element2 = driver.findElement(By.tagName("input"));
  56. element2.click();
  57.  
  58. Document doc = Jsoup.parse(driver.getPageSource());
  59.  
  60. String changes = doc.getElementsByClass("changes").toString();
  61.  
  62. parseChanges(changes);
  63. }
  64.  
  65. private void parseChanges(String changes) {
  66. String[] change = changes.split("<div class=\"details\">");
  67. for (int i = 1; i < change.length; i++) {
  68. System.out.println("***************");
  69. System.out.println(change[i]);
  70. System.out.println("***************");
  71. }
  72. }
  73.  
  74. public void login () {
  75. CredentialsProvider credsProvider = new BasicCredentialsProvider();
  76. credsProvider.setCredentials(
  77. new AuthScope("https://app.di.no/app", 80),
  78. new UsernamePasswordCredentials("username", "password"));
  79. CloseableHttpClient httpclient = HttpClients.custom()
  80. .setDefaultCredentialsProvider(credsProvider)
  81. .build();
  82.  
  83. String enc = username + ":" + password;
  84. try {
  85. HttpGet httpget = new HttpGet("https://app.di.no/app/play/edg/edg/info?_edgForm.selectedRouteId=99971&_edgForm.selectedPendingRoute=20404-100136&_edgForm.selectedDateString=10.06.2016&_edgForm.mode=Normal&_edgForm.selectedLanguageCode=sv&_edgForm.showDirectives=true&_edgForm.showIfEmpty=false");
  86. httpget.addHeader("Authorization", "Basic " + Base64.encodeBase64String(enc.getBytes()));
  87.  
  88. System.out.println("Executing request " + httpget.getRequestLine());
  89. CloseableHttpResponse response = httpclient.execute(httpget);
  90. try {
  91. System.out.println("----------------------------------------");
  92. System.out.println(response.getStatusLine());
  93. System.out.println(EntityUtils.toString(response.getEntity()));
  94. } finally {
  95. response.close();
  96. }
  97. } catch (IOException e) {
  98. e.printStackTrace();
  99. } finally {
  100. try {
  101. httpclient.close();
  102. } catch (IOException e) {
  103. e.printStackTrace();
  104. }
  105. }
  106. }
  107. }
  108.  
  109.  
  110.  
  111. public class Change {
  112. private String paper;
  113. private String days;
  114. private boolean stop;
  115. private String name;
  116. private String adress;
  117. private String info;
  118.  
  119. public Change (String paper, String days, boolean stop, String name, String adress, String info) {
  120. this.setPaper(paper);
  121. this.setDays(days);
  122. this.setStop(stop);
  123. this.setName(name);
  124. this.setAdress(adress);
  125. this.setInfo(info);
  126. }
  127.  
  128. public String getInfo() {
  129. return info;
  130. }
  131.  
  132. public void setInfo(String info) {
  133. this.info = info;
  134. }
  135.  
  136. public String getAdress() {
  137. return adress;
  138. }
  139.  
  140. public void setAdress(String adress) {
  141. this.adress = adress;
  142. }
  143.  
  144. public String getName() {
  145. return name;
  146. }
  147.  
  148. public void setName(String name) {
  149. this.name = name;
  150. }
  151.  
  152. public boolean isStop() {
  153. return stop;
  154. }
  155.  
  156. public void setStop(boolean stop) {
  157. this.stop = stop;
  158. }
  159.  
  160. public String getDays() {
  161. return days;
  162. }
  163.  
  164. public void setDays(String days) {
  165. this.days = days;
  166. }
  167.  
  168. public String getPaper() {
  169. return paper;
  170. }
  171.  
  172. public void setPaper(String paper) {
  173. this.paper = paper;
  174. }
  175. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement