我们如何使用Selenium Webdriver C#从URL获取特定值?

问题描述 投票:0回答:3

我的页面URL在下面提到,我想获得JID值。

http://.........../abc.aspx?JID=00001833

我可以从此代码中获取完整的URL,但我希望获得具体的价值。

string url = driver.Url;
Console.WriteLine(url);
c# url
3个回答
2
投票

更新:正如JeffC建议获取参数的正确方法,你应该使用HttpUtility.ParseQueryString

String yoururl = "http://example.com/abc.aspx?JID=00001833";
Uri theUri = new Uri(yoururl);
String jid = HttpUtility.ParseQueryString(theUri.Query).Get("JID");
Console.WriteLine(jid);

在这里阅读更多关于ParseQueryString的信息:https://msdn.microsoft.com/en-us/library/ms150046.aspx


*不推荐的方式(使用字符串操作):

如果您的jid长度已修复,您可以执行以下操作:*

string url = driver.Url;
string jid = url.Substring(url.Length-8,8)
Console.WriteLine(jid);

0
投票

你的例子重做了

string url = driver.Url;
string newUrl = url.Split('=').Last();
Console.WriteLine(newUrl);

-1
投票

使用string.Split尝试这个

DotNetFiddle Example You can run

这是小提琴内的代码:

var URL = "http://.........../abc.aspx?JID=00001833";
        var JID = URL.Split('?').Last();
        Console.WriteLine(JID);     
        var JIDVal = JID.Split('=').Last();
        Console.WriteLine(JIDVal);  
© www.soinside.com 2019 - 2024. All rights reserved.