我想使用Javascript从一个大网页中获取文本的某一部分,我该怎么做?

我想使用Javascript从一个大网页中获取文本的某一部分,我该怎么做?,javascript,Javascript,有一个网页随机生成一个数字,例如“Frequency:21”。我正在尝试创建一个脚本,它接受数字21,并将其与另一个变量进行比较,然后与if-else函数进行比较。基本上,我已经完成了大部分,但我无法获得数字21。由于它是随机的,所以我不能输入固定值。 有人能帮我吗 我的代码如下: setTimeout(MyFunction,5000) function MyFunction(level,legmin) { var level = x var legmin = 49 if (lev

有一个网页随机生成一个数字,例如
“Frequency:21”
。我正在尝试创建一个脚本,它接受数字
21
,并将其与另一个变量进行比较,然后与
if-else
函数进行比较。基本上,我已经完成了大部分,但我无法获得数字
21
。由于它是随机的,所以我不能输入固定值。
有人能帮我吗

我的代码如下:

setTimeout(MyFunction,5000)

function MyFunction(level,legmin) {
  var level = x
  var legmin = 49
  if (level <= legmin) {
    location.reload(true)
  }
  else {
    alert("Met requirements.")
  }

没有正则表达式的快速n脏解决方案

var lookFor = "Frequency : ";
var text = document.querySelector("#pkmnappear>form>p").textContent;
var level = text.substr(text.indexOf(lookFor) + lookFor.length).split(" ")[0];

这假设数字后面会有一个空格

您在问题中提供了一个选择器。JavaScript有
querySelector
queryselectoral
,它们使用CSS样式选择器来选择元素。所以
var-level=Number(document.querySelector(“div#pkmnearch>form>p”).textContent)
如果单词
Frequency:
在其中,那么在将其转换为
数字之前,请使用基本字符串方法将其删除。问题不清楚。谢谢。如果我们让情况进一步复杂化,比如网页可以生成一个值或显示一些文本。甚至这个值也是随机的。在这种情况下,如果我想重新加载,直到得到一个大于50的值,我该怎么做呢?我试过了,但在文字部分卡住了。(文本部分位于div>div>div#pkmn出现下)@ParthMane:要检查我的代码中的
level
是否是大于50的数字,您需要执行
var levelNum=number(level);变量isGreaterThan50=(Number.isFinite(levelNum)和&levelNum>50)
。我不明白你关于重新加载的意思,所以如果你需要更多帮助,请进一步解释。重新加载部分是重新加载页面,直到获得所需的频率。这部分很简单,否则{重新加载(正确)}
var lookFor = "Frequency : ";
var text = document.querySelector("#pkmnappear>form>p").textContent;
var level = text.substr(text.indexOf(lookFor) + lookFor.length).split(" ")[0];