通过c窗口应用程序在谷歌中搜索关键词
本文关键字:搜索 关键词 谷歌 窗口 应用程序 通过 | 更新日期: 2023-09-27 18:28:51
我想开发一个scraper程序,该程序将在谷歌中搜索关键字。我在启动scraper程序时遇到问题。我的问题是:假设窗口应用程序(c#)有2个文本框和一个按钮控件。第一个文本框有"www.google.com",第二个文本框包含keywork,例如:
文本框1:www.google.com文本框2:"蟋蟀"
我想把代码添加到将在谷歌中搜索蟋蟀的按钮点击事件中。如果有人在c#中有编程想法,请帮帮我。
向致以最良好的问候
我在谷歌上搜索了我的问题,找到了上面问题的解决方案。。。我们可以使用谷歌API为此目的。。。当我们添加对googleapi的引用时,我们将在程序中添加以下命名空间。。。。。。。。。。。
using Google.API.Search;
在按钮点击事件中写入以下代码
var client = new GwebSearchClient("http://www.google.com");
var results = client.Search("google api for .NET", 100);
foreach (var webResult in results)
{
//Console.WriteLine("{0}, {1}, {2}", webResult.Title, webResult.Url, webResult.Content);
listBox1.Items.Add(webResult.ToString ());
}
测试我的解决方案并给出意见。。。。。。。。。thanx每个
我同意Paqogomez的观点,即您似乎没有为此投入太多工作,但我也理解这可能很难开始。下面是一些示例代码,应该可以让您走上正确的道路。
private void button1_Click(object sender, EventArgs e)
{
string uriString = "http://www.google.com/search";
string keywordString = "Test Keyword";
WebClient webClient = new WebClient();
NameValueCollection nameValueCollection = new NameValueCollection();
nameValueCollection.Add("q", keywordString);
webClient.QueryString.Add(nameValueCollection);
textBox1.Text = webClient.DownloadString(uriString);
}
该代码将搜索";测试关键字";并将结果作为字符串返回。
你所问的问题是,谷歌将把你的结果作为HTML返回,你需要解析它。我真的认为你需要对谷歌API做一些研究,以及通过编程从谷歌请求数据所需要的东西。在这里开始搜索谷歌开发者。
希望这能帮助你走上正确的道路。
您可以使用WebClient
类和DownloadString
方法用于搜索。使用正则表达式匹配结果字符串中的URL。
例如:
WebClient Web = new WebClient();
string Source=Web.DownloadString("https://www.google.com/search?client=" + textbox2.text);
Regex regex =new Regex(@“ ^http(s)?://(['w-]+.)+['w-]+(/['w%&=])?$”);
MatchCollection Collection=regex.Matches(source);
List<string> Urls=new List<string>();
foreach (Match match in Collection)
{
Urls.Add(match.ToString());
}