selenium POST Java實現

原文

java實現

public void post(String url) throws InterruptedException {
        String chromedriverPath = "chromedriver";
        // Optional, if not specified, WebDriver will search your path for chromedriver.
        System.setProperty("webdriver.chrome.driver", chromedriverPath);
        
        ChromeDriver driver = new ChromeDriver();
        // 全屏ChromeDriver
        driver.manage().window().maximize();

        String script = "const form = document.createElement('form');\n" +
                "form.method = 'post';\n" +
                "form.action = '%s';\n" +
                "document.body.appendChild(form);\n" +
                "form.submit();";

        // post
        driver.executeScript(String.format(script, url));
    }

原文代碼

/**
 * sends a request to the specified url from a form. this will change the window location.
 * @param {string} path the path to send the post request to
 * @param {object} params the paramiters to add to the url
 * @param {string} [method=post] the method to use on the form
 */

function post(path, params, method='post') {

  // The rest of this code assumes you are not using a library.
  // It can be made less wordy if you use one.
  const form = document.createElement('form');
  form.method = method;
  form.action = path;

  for (const key in params) {
    if (params.hasOwnProperty(key)) {
      const hiddenField = document.createElement('input');
      hiddenField.type = 'hidden';
      hiddenField.name = key;
      hiddenField.value = params[key];

      form.appendChild(hiddenField);
    }
  }

  document.body.appendChild(form);
  form.submit();
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章