我想获得谷歌搜索结果的间接链接。
在谷歌搜索后如果右键单击结果链接改为像这样的事情
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0CCkQFjAB&url=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FHI&ei=y8mSVJb3HYqlNqvBgIgM&usg=AFQjCNEWA_V3hjoVAu_W7mu3fbN6Q4n0Lw&sig2=dDRuO4YH9VIDXgQoZJH4tQ&bvm=bv.82001339,d.eXY
如果不点击
http://en.wikipedia.org/wiki/HI
所有因为 onmousedown
中的此功能<a class="l" onmousedown="return rwt(this,'','','','4','AFQjCNGl8DlEwS7SQ8vWxBPyiZBUbUj0Yg','Nlw9cdFH31TadhaL8C4A8g','0CDEQFjAD')" href="http://....">
无论如何我想获得间接链接我尝试右键首先使用javascript然后获取链接但我不能
这是我的示例代码:
HtmlElement script1 = webBrowser1.Document.CreateElement("script");
HtmlElement script2 = webBrowser1.Document.CreateElement("script");
HtmlElement script3 = webBrowser1.Document.CreateElement("script");
HtmlElement script4 = webBrowser1.Document.CreateElement("script");
script1.SetAttribute("rightc1", "function rightc1(thiselements){var element = thiselements;var e = element.ownerDocument.createEvent('MouseEvents');e.initMouseEvent('contextmenu', true, true,element.ownerDocument.defaultView, 1, 0, 0, 0, 0, false,false, false, false,2, null);return !element.dispatchEvent(e);}");
script2.SetAttribute("rightc2", "function rightc2(thiselements){$('#thiselements').trigger({type: 'mousedown',which: 3});}");
script3.SetAttribute("rightc3", "function rightc3(thiselements){$('#thiselements').trigger({type: 'mouseup',which: 3});}");
script4.SetAttribute("rightc4", "function rightc4(thiselements){$('#thiselements').trigger({type: 'mousedown',which: 3}).trigger({type: 'mouseup',which: 3});}");
然后附加到链接
link.AppendChild(script1);
并使用此代码运行脚本
webBrowser1.Document.InvokeScript("rightc1", args);
我也尝试用
link.InvokeMember("Click");
重定向到新页面后想要获取链接!
但一切都不适合我!并返回像这样的直接链接
http://en.wikipedia.org/wiki/HI
有什么不对?我怎样才能获得间接链接?有可能?还有其他想法吗?
亲切的问候。答案 0 :(得分:0)
只需触发结果mousedown
标记的<a>
事件 - 手动或按代码删除 - 然后再次阅读标记href
- 它将包含Google重定向链接。