CNode

页面中代码是<td>@mainIn@</td>的价格数据如何提取?

Bblackgun发布于13 年前最后回复13 年前9 回复6339 浏览0 收藏

目前工作中遇到一个困难,需提取价格数据,但数据似乎是异步载入的。

参考页面: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)

X
xiuxu123#1·13 年前

问题说明白点,这样没人知道你想要什么?

你如果想直接获取页面上的值,直接jquery不行吗?

B
blackgun#2·13 年前

页面中的《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

X
xujun52011#3·13 年前

var reg = /(\d+(?:.\d+)?)</td>/ig; var str = '100.101123'; var match = null; while((match = reg.exec(str)) != null) { console.log(match); }

X
xujun52011#4·13 年前

尼玛... 把格式全部都干掉了.... 无法正常回复啊...

X
xujun52011#5·13 年前
X
xujun52011#6·13 年前
X
xujun52011#7·13 年前

var reg = /&lt;td&gt;(\d+(?:.\d+)?)&lt;/td&gt;/ig; var str = '&lt;td&gt;100.10&lt;/td&gt;&lt;td&gt;1234&lt;/td&gt;'; var match = null; while((match = reg.exec(str)) != null) { console.log(match); }

X
xujun52011#8·13 年前

尼玛啊 我放弃了...

X
xiuxu123#9·13 年前
引用 blackgun页面中的《td》..《/td》之间的信息不是具体数值,而是模版变量。用抓取程序读取的结果是:《td》@mainIn@《/td》,而不是具体数值(比如:《td》95.05《\td》),应该是页面...

这是个问题,你给的这个链接在请求的时候还没有数据,数据是后来加载上去的,就算你请求这个链接也是没有数据的,所以这还真是个问题,我也想知道怎么解决这个问题?

参与回复
登录后即可参与回复。登录