【发布时间】:2017-09-14 07:58:22
【问题描述】:
我想从链接结构如下的网站获取为 YouTube 播放列表生成的所有 URLs 的完整列表:
<table class="table" id="ListVideo">
<tbody>
<tr>
<th scope="row">1</th>
<td><img style="height: 55px;width: 90px;" src="http://img.youtube.com/vi/mHpvT1P_OAM/default.jpg"></td>
<td>Android Development for Beginner: Brief Overview Of Android</td>
<td>
<div id="Download-mHpvT1P_OAM" link="https://redirector.googlevideo.com/videoplayback?api=youtubemultidownloader.com&mn=sn-p5qlsnz6&signature=B2C601E05D43FADDDDDC595B25F3A77E4CF24FB9.96E1AB91173820178049E0402A3F48E29086AEBB&mime=video%2Fmp4&mt=1492516586&dur=182.415&id=o-AIjyKLM2gc2g7w9RB0izMEVqvaTbIxAJ9iTa0tQakpAb&key=yt6&ip=66.249.83.29&mm=31&mv=m&pl=28&ipbits=0&ms=au&sparams=dur%2Cei%2Cid%2Cip%2Cipbits%2Citag%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cpl%2Cratebypass%2Crequiressl%2Csource%2Cupn%2Cexpire&expire=1492538256&lmt=1486569580323751&ratebypass=yes&source=youtube&upn=P2VOmq_LKgk&itag=22&requiressl=yes&ei=MP_1WLKeBuKF8gTh35WgDQ&title=01.Android%20Development%20for%20Beginner%3A%20Brief%20Overview%20Of%20Android"><a download="" href="https://redirector.googlevideo.com/videoplayback?api=youtubemultidownloader.com&mn=sn-p5qlsnz6&signature=B2C601E05D43FADDDDDC595B25F3A77E4CF24FB9.96E1AB91173820178049E0402A3F48E29086AEBB&mime=video%2Fmp4&mt=1492516586&dur=182.415&id=o-AIjyKLM2gc2g7w9RB0izMEVqvaTbIxAJ9iTa0tQakpAb&key=yt6&ip=66.249.83.29&mm=31&mv=m&pl=28&ipbits=0&ms=au&sparams=dur%2Cei%2Cid%2Cip%2Cipbits%2Citag%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cpl%2Cratebypass%2Crequiressl%2Csource%2Cupn%2Cexpire&expire=1492538256&lmt=1486569580323751&ratebypass=yes&source=youtube&upn=P2VOmq_LKgk&itag=22&requiressl=yes&ei=MP_1WLKeBuKF8gTh35WgDQ&title=01.Android%20Development%20for%20Beginner%3A%20Brief%20Overview%20Of%20Android&title=01.Android%20Development%20for%20Beginner%3A%20Brief%20Overview%20Of%20Android"
class="btn btn-default" type="button">MP4 720P</a> </div>
</td>
</tr>
.
. and so on
.
.
</tbody>
</table>
我可以使用
从a tag 获取单个href
console.log($("#ListVideo td div a").attr("href"))
这给了我链接
https://redirector.googlevideo.com/videoplayback...0Brief%20Overview%20Of%20Android我要
但是当我尝试使用以下函数遍历所有链接时
$("#ListVideo td div a").each(()=> {console.log($(this).attr("href"))})
相反,我得到了未定义。 这是JSfiddle 链接,其中包含我想从中获取链接的完整页面源。 有人可以告诉我哪里出错了。谢谢
【问题讨论】:
-
那里的解决方案与我尝试过的相同,但不起作用
-
可能是因为您试图从 div 中获取 href 属性(不会有)
-
抱歉忘了在这里添加标签,虽然我用它来获取所有链接,更新了我的问题
-
在这种情况下,您可能无法在 each 中执行类似的匿名函数
标签: javascript jquery html web-scraping