需要从页面源定位视频代码,以及如何使视频可播放

时间:2013-07-30 05:05:22

标签: javascript html ajax node.js

我需要将视频代码直接嵌入博客中。

我能够找出视频所在的代码,我将其存储在html文件中,将其命名为video.html

这是我必须提取视频的链接,观看视频链接:

http://www.moneycontrol.com/news/stocks-views/hdil-tata-global-ifci-top-picks-manoj-vayalar_925072.html

问题在于,当我上传video.html文件时,只会加载静态图像。当我点击按钮时,我需要视频可播放,以便我可以直接在博客中插入此video.html。

以下是代码:

<div class="CL"></div>
<div class="vidnewsin">
<div class="vidmd">
<div class="vidplayin">
<div class="gD_18"><a href="javascript:void(0);" onclick="javascript:load_vplayer('925072');" title="Watch Video" ><span class="vidtg"></span><strong>Watch Video</strong></a></div><div class="MT10"></div>
<div id="load_player">
<div class="PRVEDO"><a class="playBtnSn" href="javascript:void(0);" onclick="javascript:load_vplayer('925072');"></a><img src="http://img.moneycontrol.co.in/news_image_files/vid_img/2013/07/925072.jpg" width="441" height="361" alt="" /></div>
<div><img src="http://img.moneycontrol.co.in/images/news/vplrBar.gif" alt="" /></div>
                                         <div class="PT10">

我知道我只加载图像源,因此视频会作为图像加载。

另外,如何直接在博客中插入video.html。

请帮助我。

感谢。

更新

是否可以通过我正在创建的html文件加载视频?我的意思是,如果我可以提取视频的内容服务器,那么视频是否可以通过html文件播放?感谢。

更新

我稍微修改了代码,并直接添加了视频网址:

<div class="CL"></div>
<div class="vidnewsin">
<div class="vidmd">
<div class="vidplayin">
<div class="gD_18"><a href="javascript:void(0);" onclick="javascript:load_vplayer('http://videos.moneycontrol.com/web18/mc-vods/2013Jul/manoj_variuousstocks_25jul.mp4');" title="Watch Video" ><span class="vidtg"></span><strong>Watch Video</strong></a></div><div class="MT10"></div>
<div id="load_player">
<div class="PRVEDO"><a class="playBtnSn" href="javascript:void(0);" onclick="javascript:load_vplayer('http://videos.moneycontrol.com/web18/mc-vods/2013Jul/manoj_variuousstocks_25jul.mp4');"></a><img src="http://img.moneycontrol.co.in/news_image_files/vid_img/2013/07/925072.jpg" width="441" height="361" alt="" /></div>
<div><img src="http://img.moneycontrol.co.in/images/news/vplrBar.gif" alt="" /></div>
                                         <div class="PT10">

我认为,通过这样做,视频将可以直接使用HTML文件播放,我将在博客中使用该文件。

但是,问题仍未解决。

请告诉我错误的地方,即使这意味着,从moneycontrol页面重构ajax请求,虽然我不知道Ajax脚本。

感谢。

1 个答案:

答案 0 :(得分:2)

在查看页面的源HTML后,我发现点击播放按钮后,会有一个ajax请求来获取真实视频嵌入代码。在您的情况下,此代码是

<div style="z-index:0;" id="player">
  <embed width="468" height="351" flashvars="servicetype=chunk&amp;streamurl=2013Jul/manoj_variuousstocks_25jul.mp4&amp;totalchunk=4&amp;videopart=&amp;server=http://videos.moneycontrol.com/web18/mc-vods/&amp;controllerpath=http://img.moneycontrol.co.in/tv/flash/control_moneycontrol_chunk_24July.swf&amp;autoplay=1&amp;showrelatedbutton=0&amp;relatedPath=http://api.moneycontrol.com/solr/solr_related_videos_multiple_test.php?id=925072%26format=player&amp;site=www.moneycontrol.com&amp;trackingurl=http://vtracking.in.com/TackImg_CHK_VOD.PNG&amp;googlepreroll=0&amp;googlepostroll=0&amp;googleoverlay=0&amp;channelindex=3&amp;vastpreurl=http%3A%2F%2Fc7.zedo.com%2Fjsc%2Fc1%2Ffns.vast%3Fn%3D1656%26c%3D1211%26d%3D18%26s%3D11%26v%3Dvast2%26z%3D&amp;vastposturl=http%3A%2F%2Fc7.zedo.com%2Fjsc%2Fc1%2Ffns.vast%3Fn%3D1656%26c%3D1214%26d%3D18%26s%3D11%26v%3Dvast2%26z%3D&amp;vastoverlayurl=http%3A%2F%2Fc7.zedo.com%2Fjsc%2Fc1%2Ffns.vast%3Fn%3D1656%26c%3D1213%26d%3D83%26s%3D11%26v%3Dvast2%26z%3D" allowscriptaccess="always" wmode="transparent" allowfullscreen="true" quality="high" bgcolor="#ffffff" name="videoPlayer" id="videoPlayer" style="undefined" src="http://img.moneycontrol.co.in/tv/flash/Main_chunk_24July.swf" type="application/x-shockwave-flash">
</div>

有关更多详细信息,ajax请求处理程序位于http://www.moneycontrol.com/mccode/news/article/load_video_ajax.php`。你可以在javascript中看到它

function load_vplayer(auto_num)
{
  if(navigator.userAgent.match(/iPad/i) != null)
  {
    window.location="http://www.moneycontrol.com/tablet/index.php?v_autono="+auto_num;
  }
  else
  {
    $.ajax({
      type: "POST",
      url: "/mccode/news/article/load_video_ajax.php",
      data: {auto_num:auto_num},
      timeout:5000,
      error: function(jqXHR, exception) {},
      success: function(data){
        if(data!='')
        {
          $("#load_player").html("");
          $("#load_player").html(data);
        }
      }
    });
  }
} 

另一个问题是定位视频位置的flashvar属性。正如您在嵌入代码中看到的那样,Flash播放器使用相对URL作为输入。因此,我担心您无法仅使用自己的HTML来嵌入来自此网站的视频。

<强>更新

在ajax回复中,视频uri位于两个部分:

  • 服务器server=http://videos.moneycontrol.com/web18/mc-vods/
  • 视频相对网址streamurl=2013Jul/manoj_variuousstocks_25jul.mp4

根据以上数据,视频的完整网址为http://videos.moneycontrol.com/web18/mc-vods/2013Jul/manoj_variuousstocks_25jul.mp4。您可以将其与其他播放器as in my demo一起使用来加载视频。