如何使用string var搜索网站/访问网站

时间:2017-05-11 23:53:02

标签: c# youtube video-streaming searchbar

我正在学习c#,我对如何在c#中控制网站有疑问,c#如何与网站协同工作。

例如,我们说我打开了一个带有空白页面的chrome。

Process.Start("http://blank.org/"); //<-  like this. 

(有什么方法可以打开一个空白页面吗? - 不是很重要......)

问题1)

现在我想使用地址栏访问YouTube。 例如,我有:

string address = "www.youtube.com"

我想在地址栏中输入此字符串并自动点击搜索按钮。 有可能吗?

问题2)

我们说我解决了问题1。 之后,我想使用搜索栏搜索某些内容 例如,我有:

string keyword = "funny cat video";

然后我想在搜索栏上输入这个关键字,然后搜索它。

我该怎么做? 在c#中有可能吗?

问题3)

然后我想在屏幕上播放第一个结果。 例如,像这样: The first result that is found with the keyword

在这种情况下,我该怎么办?

提前非常感谢你。我一直在谷歌搜索,我无法找到该怎么做。

1 个答案:

答案 0 :(得分:3)

尝试此操作进行简单搜索:

string youtubeUrl = @"https://www.youtube.com";
string keyword = "funny cat video";

string searchUrl = string.Format("{0}/results?search_query={1}", youtubeUrl, keyword.Replace(" ", "+"));
Process.Start(searchUrl); 

如果您想操纵搜索结果,则可以使用YouTube API获取YouTube视频的第一个结果。

如果您不想使用YouTube Search API,则需要download the html and parse才能在页面上找到第一个视频链接(就像在jquery中一样: $("a[href^='/watch?v=']"))。

获得youtube视频ID后,您就可以打开并观看它了。

string youtubeUrl = @"https://www.youtube.com";
string youtubeVideoId = "njSyHmcEdkw"; 

string watchVideoUrl = string.Format("{0}/watch?v={1}", youtubeUrl, youtubeVideoId);

Process.Start(watchVideoUrl);