通过提供搜索字符串在页面上查找 URL
Finding URL on a page by giving a search string
我正在学习在 Firefox 上使用 Greasemonkey。
在 Google 搜索结果页面上,我试图找到一个 link 并点击它。
我给出了搜索查询 "cookie cutter".。在结果中,有一个 url merriam-webster.com 的结果,我正在尝试查找并单击它。
这是我到目前为止所写的。
function clickURLWithText () {
var links = $('a[href*="merriam-webster.com"]');
var randomNum = Math.floor(Math.random()*links.length);
var targetLink = links.get(randomNum);
triggerMouseEvent (targetLink, "click");
}
function triggerMouseEvent (node, eventType) {
// code comes here
}
然而,Google 搜索似乎像这样扰乱了 url:
<a href="/url?sa=t&rct=j&q=&esrc=s&source=web&cd=9&cad=rja&uact=8&ved=2ahUKEwjltNj8w9ngAhVNip4KHQdJDdQQFjAIegQIDBAB&url=https%3A%2F%2Fwww.merriam-webster.com%2Fdictionary%2Fcookie-cutter&usg=AOvVaw3PbUvVz6q2bSTgondh9KCq" onmousedown="return rwt(this,'','','','9','AOvVaw3PbUvVz6q2bSTgondh9KCq','','2ahUKEwjltNj8w9ngAhVNip4KHQdJDdQQFjAIegQIDBAB','','',event)" data-cthref="/url?sa=t&rct=j&q=&esrc=s&source=web&cd=9&cad=rja&uact=8&ved=2ahUKEwjltNj8w9ngAhVNip4KHQdJDdQQFjAIegQIDBAB&url=https%3A%2F%2Fwww.merriam-webster.com%2Fdictionary%2Fcookie-cutter&usg=AOvVaw3PbUvVz6q2bSTgondh9KCq">
<h3 class="LC20lb">Cookie-cutter | Definition of Cookie-cutter by Merriam-Webster</h3>
<br>
<div class="TbwUpd"><cite class="iUh30">https://www.merriam-webster.com/dictionary/cookie-cutter</cite></div>
</a>
在这种情况下,如何找到 merriam-webster.com 并点击它的 href 部分?
jQuery 似乎未在 Google 搜索结果页面上定义(在控制台中键入 $.fn.jquery)。因此,您可以将代码更改为:
function clickURLWithText () {
var links = document.querySelectorAll('a[href*="merriam-webster.com"]');
var randomNum = Math.floor(Math.random()*links.length);
var targetLink = links[randomNum];;
targetLink.click();
}
我正在学习在 Firefox 上使用 Greasemonkey。
在 Google 搜索结果页面上,我试图找到一个 link 并点击它。
我给出了搜索查询 "cookie cutter".。在结果中,有一个 url merriam-webster.com 的结果,我正在尝试查找并单击它。
这是我到目前为止所写的。
function clickURLWithText () {
var links = $('a[href*="merriam-webster.com"]');
var randomNum = Math.floor(Math.random()*links.length);
var targetLink = links.get(randomNum);
triggerMouseEvent (targetLink, "click");
}
function triggerMouseEvent (node, eventType) {
// code comes here
}
然而,Google 搜索似乎像这样扰乱了 url:
<a href="/url?sa=t&rct=j&q=&esrc=s&source=web&cd=9&cad=rja&uact=8&ved=2ahUKEwjltNj8w9ngAhVNip4KHQdJDdQQFjAIegQIDBAB&url=https%3A%2F%2Fwww.merriam-webster.com%2Fdictionary%2Fcookie-cutter&usg=AOvVaw3PbUvVz6q2bSTgondh9KCq" onmousedown="return rwt(this,'','','','9','AOvVaw3PbUvVz6q2bSTgondh9KCq','','2ahUKEwjltNj8w9ngAhVNip4KHQdJDdQQFjAIegQIDBAB','','',event)" data-cthref="/url?sa=t&rct=j&q=&esrc=s&source=web&cd=9&cad=rja&uact=8&ved=2ahUKEwjltNj8w9ngAhVNip4KHQdJDdQQFjAIegQIDBAB&url=https%3A%2F%2Fwww.merriam-webster.com%2Fdictionary%2Fcookie-cutter&usg=AOvVaw3PbUvVz6q2bSTgondh9KCq">
<h3 class="LC20lb">Cookie-cutter | Definition of Cookie-cutter by Merriam-Webster</h3>
<br>
<div class="TbwUpd"><cite class="iUh30">https://www.merriam-webster.com/dictionary/cookie-cutter</cite></div>
</a>
在这种情况下,如何找到 merriam-webster.com 并点击它的 href 部分?
jQuery 似乎未在 Google 搜索结果页面上定义(在控制台中键入 $.fn.jquery)。因此,您可以将代码更改为:
function clickURLWithText () {
var links = document.querySelectorAll('a[href*="merriam-webster.com"]');
var randomNum = Math.floor(Math.random()*links.length);
var targetLink = links[randomNum];;
targetLink.click();
}