我用它来导航到一个网站
doc = web.Load("http://google.com/search?btnI=1&q=[my keyword]") //I'm Feeling Lucky
然后我需要导航网站的网址...我怎么能得到它?
答案 0 :(得分:1)
您可以使用HtmlWeb.ResponseUri
属性获取实际响应请求的Internet资源的URI。
一个例子 - 谷歌搜索“cookies”:
var web = new HtmlWeb();
var doc = web.Load("http://google.com/search?btnI=1&q=cookies");
var responseUrl = web.ResponseUri;
获取http://en.wikipedia.org/wiki/HTTP_cookie
。
答案 1 :(得分:0)
您可以通过以下方式获取当前浏览器的网址:
string url = HttpContext.Current.Request.Url.AbsoluteUri;
答案 2 :(得分:0)
看起来Sam1可能已经为您提供了一个或两个实例的正确答案(我没有HTML Agility Pack的实际经验)。
话虽如此,如果您打算使用keywords
向Google发出大量电话,以便您可以检索到最高结果(即“我感觉幸运”结果),那么我强烈建议您使用Google的自定义搜索API(https://developers.google.com/custom-search/v1/overview)。
如果您使用此API提取JSON结果,它将使用更少的带宽。
API的使用仅允许每天100次免费查询。这可能属于您的应用程序要求,但也可能不是。如果您有办法,我建议您支付谷歌,如果您打算进行数以千计的查询,我会付款。
答案 3 :(得分:0)
这里有两点需要注意。首先 - 在没有“www”的上述网址中使用“http://google.com”会强制301重定向到“http://www.google.com”,因此您应该包含www以保持简单。
第二个是打开URL(使用www)执行302重定向。目标位于响应标头内。因此,如果您能够收到302响应,那么您可以在将其发送给您之前获取Google将其发送给您的网址。
以下是第一个请求的响应和请求标头,其中Google执行301重定向到www域。
回复标题
Cache-Control public,max-age = 2592000
内容长度244
Content-Type text / html;字符集= UTF-8
2013年2月18日星期一,格林威治标准时间14:14:40
2013年3月20日星期三,格林威治标准时间14:14:40
位置http://www.google.com/search?btnI=1&q=html5
服务器gws
X-Frame-Options SAMEORIGIN
X-XSS-Protection 1;模式=块
请求标题
接受text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8
接受编码gzip,deflate
Accept-Language en-US,en; q = 0.5
连接保持活着
Cookie PREF = ID = 5d01155d00a8d706:U = 49fab5927df1f8ad:FF = 0:TM = 1359732743:LM = 1360874099:S = byw-1-fgfbcRWdPN; NID = 67 = NpFNjRkjTFtyrcYPE-pQeJiMFEgWMWdyVMVpbYATZySlsw63Hz4FCw2Tcr4tynhAhyq1vnuPqmdFBOC65Nd-048ZxrgP_HVtKbVCe7psi-G2aMvsOUbiBl1xYks2xK2K
DNT 1
主持人google.com
用户代理Mozilla / 5.0(Windows NT 6.2; WOW64; rv:18.0)Gecko / 20100101 Firefox / 18.0
文
302的响应/请求标头将我带到目标页面。您可以看到返回目标URL。我把它加在副本中。
回复标题
缓存控制私有
内容长度231
Content-Type text / html;字符集= UTF-8
日期星期一,2013年2月18日14:14:41 GMT
位置 http://en.wikipedia.org/wiki/HTML5
服务器gws
X-Frame-Options SAMEORIGIN
X-XSS-Protection 1;模式=块
请求标题
接受text / html,application / xhtml + xml,application / xml; q = 0.9, / ; q = 0.8
接受编码gzip,deflate
Accept-Language en-US,en; q = 0.5
连接保持活着
Cookie PREF = ID = 5d01155d00a8d706:U = 49fab5927df1f8ad:FF = 0:TM = 1359732743:LM = 1360874099:S = byw-1-fgfbcRWdPN; NID = 67 = NpFNjRkjTFtyrcYPE-pQeJiMFEgWMWdyVMVpbYATZySlsw63Hz4FCw2Tcr4tynhAhyq1vnuPqmdFBOC65Nd-048ZxrgP_HVtKbVCe7psi-G2aMvsOUbiBl1xYks2xK2K
DNT 1
主持www.google.com
用户代理Mozilla / 5.0(Windows NT 6.2; WOW64; rv:18.0)Gecko / 20100101 Firefox / 18.0
文