目前工作中遇到一个困难,需提取价格数据,但数据似乎是异步载入的。
参考页面:http://finance.sina.com.cn/realstock/company/sz300228/nc.shtml
<tr>
<th>
金额(万元)
</th>
<td>[@mainIn](/user/mainIn)@</td>
<td>[@mainOut](/user/mainOut)@</td>
<td>[@retailIn](/user/retailIn)@</td>
<td>[@retailOut](/user/retailOut)@</td>
</tr>
请高手讲解一下这种怎么回事,该如何解决?
9 回复
页面中的《td》…《/td》之间的信息不是具体数值,而是模版变量。用抓取程序读取的结果是:《td》@mainIn@《/td》,而不是具体数值(比如:《td》95.05《\td》),应该是页面中js程序用ajax方式替换@mainIn@为95.05。
我如何才能找到@mainIn@替换方法和数值源头,具体例子请看这个页面的代码:http://finance.sina.com.cn/realstock/company/sz300228/nc.shtml
var reg = /
var reg = /
(\d+(?:.\d+)?)</td>/ig;
var str = ' 100.10 1123 ';
var match = null;
while((match = reg.exec(str)) != null) {
console.log(match);
}
var reg = /(\d+(?:\.\d+)?)<\/td>/ig; var str = ' 100.10 1123 '; var match = null; while((match = reg.exec(str)) != null) { console.log(match); }