学习语言中,想知道怎么读取一个网页上的数值,网页源码中没有直接写出的

学习语言中,想知道怎么读取一个网页上的数值,网页源码中没有直接写出的,比如下图淘宝上宝贝价格,我想以文本型读出来,但是源码中并没有写出价格,可能是访问网页返回的一个数字,... 学习语言中,想知道怎么读取一个网页上的数值,网页源码中没有直接写出的,比如下图淘宝上宝贝价格,我想以文本型读出来,但是源码中并没有写出价格,可能是访问网页返回的一个数字,求能快速得到这个宝贝价格的命令 或者思路 另外本人小白 刚学不久 网页源码也一点也看不懂 能帮忙解释下就太感谢了!! 展开
 我来答
lhcatacgf
推荐于2016-10-23 · TA获得超过921个赞
知道小有建树答主
回答量:588
采纳率:100%
帮助的人:499万
展开全部

不要看源码......


在数字上右键,选择检查元素,应该会自动打开开发者工具,且跳转到相应的位置。这里显示的文档树是最终的,就是所有脚本执行完之后。



一定要选中它的话,可以看到它没有id,只有class名是tm-price,第一种方法是

document.getElementsByClassName("tm-price")

,但可能多个元素都属于一个class,这样会返回包含多个元素的数组,经过观察发现,数组里只有两个元素,还有一个class是tm-price的元素是下面「价格」处被打了删除线的,红色的价格总是在它的前面,即总是数组的第一个元素。所以可以:

document.getElementsByClassName("tm-price")[0]  
// 选择第一个class为tm-price的元素

获取内部的数字的话就简单了,.innerHTML,想必你知道。



还可以用

document.querySelectorAll(".tm-price")

这里的参数是一个css选择器,.tm-price就代表「class为tm-price」。他现在的作用和getElementsByClassName一样。进一步可以用

document.querySelectorAll(".tm-promo-price .tm-price")
// 选择所有.tm-promo-price中的.tm-price

达到同样效果。


方法有很多,思路就是看他在文档中的层级结构,然后一步步缩小范围直到只选中想要的那个。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式