[英]Getting HREF of an html node
我在http://www.entrepreneuronfire.com/podcast/edwinhavens/上有一个页面
带有http://i.imgur.com/u59IAXB.png的图片
我需要在名为spp-dloada
类上获取MP3文件的下载链接 (即hxxp://traffic.libsyn.com/entrepreneuronfire/Edwin_Havens.mp3)(如Web检查员所检测到的),但是我所有的48小时尝试都以spp-dloada
。
该下载链接在chrome中显示良好(如
<a href="http://traffic.libsyn.com/entrepreneuronfire/Edwin_Havens.mp3" download="Edwin_Havens.mp3">
<span class="spp-dloada"></span>
</a>
), 但在FireFox 38和IE11中 却没有 ,但是我需要在这两个浏览器中使用它们。
对于FireFox和IE11,HTML代码段是
<div class="spp-controls">
<span class="spp-speed"/>
<span class="spp-share">
<div class="spp-share-options" style="display: none;">
<a class="spp-share-icon spp-twitter-btn" href="">Share</a>
<a class="spp-share-icon spp-fb-btn" href="">Share</a>
<a class="spp-share-icon spp-gplus-btn" href="">Share</a>
<!--<a href="" class="spp-share-icon spp-email-btn">Share</a>-->
</div>
</span>
<span class="spp-dload"/>
<span class="spp-play"/>
最奇怪的是,当我单击下载按钮(如上图所示)时,iframe变为
<iframe class="spp-downloader" style="display:none" src="http://www.entrepreneuronfire.com?spp_download=http://traffic.libsyn.com/entrepreneuronfire/Edwin_Havens.mp3"/>
到目前为止尝试过的是-
软体:firebug,temp资料,modifyheaders
语言:XPATH,CCS选择器,jQuery
编辑----对不起,迟到的陪词
我也需要纯XPATH表达式,因为不同的浏览器行为不同
NB HTML片段仅适用于铬
链接内部的span包含一个类,因此您可以使用jQuery来获取父级的“ href”属性,如下所示:
$('.spp-dloada').parent().attr('href');
(这当然是假设您有权修改此网站上的代码。)
RE:编辑
根据此处的答案,IE看起来不像IE支持XPath: jquery通过xpath选择元素
如果查看页面的源代码,则可以看到该源代码与检查元素时看到的生成的源代码不同。
您尝试获取的链接不在实际的页面源中,但是,这是:
<div class="smart-track-player stp-color-ff6100" data-url="http://traffic.libsyn.com/entrepreneuronfire/Edwin_Havens.mp3" data-download="true"data-color="ff6100" data-title="Edwin Havens" data-artist="John Lee Dumas chats with" data-uid="IU5Uvc7G" ></div>
我猜该页面具有某些Javascript功能,可从此标记生成可点击的链接。
尝试使用以下jQuery代码访问下载网址:
$('.smart-track-player').attr('data-url');
要获取此节点的XPath表达式将如下所示:
//div[@class='smart-track-player stp-color-ff6100']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.