在源内部查找链接并复制整个链接网络客户端



所以我正在使用 c#,我想从页面中获取一个以设置域开头的链接。

例如,我要抓取的链接是 https://example.com/yikes/####,其中"#"是一个随机字符串。

请注意,这是在一个大型 html 文件中,其中包含多个链接。一些链接也包含 https://example.com/,但没有一个包含 https://example.com/yikes/,但这个。

它也在iFrame中。我不知道这是否是有用的信息。或不。

html看起来像这样

<!DOCTYPE html>
<html>
<body>
<a href="https://example.com">This is a link</a>
<a href="https://example.com/ooof">This is also link</a>
<iframe src="https://example.com/ooof"></iframe>
<iframe src="https://example.com/yikes/138fskg"></iframe>
<iframe src="https://example.com/biggie"></iframe>

</body>
</html>

这是我所能得到

string videoLink = wc.DownloadString(link);
bool contain = videoLink.Contains("https://example.com/yikes/");
if (contain == true)
{ 
//Copy whole link
}

谢谢你的帮助!

据我了解,您希望拥有以"https://example.com/yikes/"开头的链接。

string[] videoLinks = new string[5]
{
"<iframe src='https://example.com/ooof'></iframe>",
"<iframe src='https://example.com/yikes/138fskg'></iframe>",
"<iframe src='https://example.com/biggie'></iframe>",
"<iframe src='https://example.com/yikes/138fskg/1231'></iframe>",
"<iframe src='https://example.com/yikes/138fskg/12314531'></iframe>",
};
string link = "https://example.com/yikes/";
var matchedValues = videoLinks.Where(v => v.Contains(link));
foreach (var item in matchedValues)
{
Console.WriteLine(item);
}

输出:

<iframe src='https://example.com/yikes/138fskg'></iframe>
<iframe src='https://example.com/yikes/138fskg/1231'></iframe>
<iframe src='https://example.com/yikes/138fskg/12314531'></iframe>

最新更新