有关从 Web 驱动程序中的 URL 中提取参数的问题



我需要帮助从URL中提取参数。我用过

String url = driver.getCurrentUrl()

以捕获当前网址。

之后,我需要从名为 oauth_verifier 的参数中提取值

http://localhost:4200/consent?oauth_token=something&oauth_verifier=something

所以我可以稍后在代码中使用它。

任何帮助都会很棒。提前感谢!

试试这个,我不确定它的正确方式,但它的工作...

String str = "http://localhost:4200/consent?oauth_token=something&oauth_verifier=something"; 
        String[] arrOfStr = str.split("/"); 
String temp=arrOfStr[3];
String temp2[]=temp.split("\?|\=");

若要提取与oauth_verifier关联的,您需要将 WebDriverWaitExpectConditions urlContains()作为文本oauth_verifier,您可以使用以下解决方案:

  • 代码块:

    new WebDriverWait(driver, 20).until(ExpectedConditions.urlContains("oauth_verifier"));
    String fullUrl = driver.getCurrentUrl();
    String[] UrlParts = fullUrl.split("=");
    System.out.println(UrlParts[2]);
    
  • 控制台输出:

    something
    

假设它的Java,你应该使用String的子字符串函数。

yourstring.substring(indexOf1stCharacter,indexOfLastCharacter)

对于您的情况:

url.substring(url.indexOf("oauth_verifier=") + 15 , url.length());

最新更新