Jquery 如何从<;中提取文本;span>;带计时器的elemant?
我正在解析一个包含倒计时的网页,这意味着这个计时器的Jquery 如何从<;中提取文本;span>;带计时器的elemant?,jquery,html,parsing,jquery-selectors,Jquery,Html,Parsing,Jquery Selectors,我正在解析一个包含倒计时的网页,这意味着这个计时器的元素每秒都有不同的文本内容。具有静态文本的所有其他元素都可以毫无问题地解析,但计时器的元素始终不返回任何内容,即空字符串,包括.innerHTML和.textContent。我试图获得的是调用.textContent时计时器的纯文本值。(几乎像截图)。两个问题: 为什么倒计时的span元素不返回任何文本内容?为什么它的行为与所有其他span元素不同 除了.innerHTML和.textContent之外,我还可以做些什么来获取span元素的文本
元素每秒都有不同的文本内容。具有静态文本的所有其他元素都可以毫无问题地解析,但计时器的元素始终不返回任何内容,即空字符串,包括.innerHTML
和.textContent
。我试图获得的是调用.textContent
时计时器的纯文本值。(几乎像截图)。两个问题:
.innerHTML
和.textContent
之外,我还可以做些什么来获取span元素的文本内容.innerHTML
:
var request = require('request');
const jsdom = require("jsdom");
const { JSDOM } = jsdom;
request('example.com', function (error, response, html) {
if (!error && response.statusCode == 200) {
const dom = new JSDOM(html);
console.log(dom.window.document.querySelector('span.status__timer').innerHTML);
});
这就是我试图找到的
元素:
静态
元素,如span.status\uu count
返回.innerHTML
,但计时器返回空字符串。它们看起来是一样的:它们都有相同的React
标识符,所以我高度怀疑这是造成它的原因。innerHTML
应该适用于。。。您是否完全确定访问的是正确的span对象?您能解释一下解析网页的意思吗?您的解析代码是否可能在span中设置内容之前运行得太快?@MattClark是的,100%确定。我按类名选择span元素,在整个HTML文档中只有一个span元素具有该名称。查询选择器返回一个HtmlPanel元素,但由于某种原因,.innerHTML
是空的。您可以简单地尝试一下console.log(theSpan)
,看看您在JS控制台中获得了关于该对象的哪些详细信息吗?您的意思是试图从外部网页中获取内容吗?如果是这样,您可能只是在计时器动态设置范围的内容之前访问服务器生成的内容。更好的方法可能是找出计时器是如何为跨度生成内容的。