【发布时间】:2016-01-12 16:49:11
【问题描述】:
我需要某种可以从 mp4engine 中提取链接的算法。
Here is the example of a page I want to scrap.
在这种情况下,所需的输出是:http://mp4engine.com:182/d/a2chmyndcqqgkpskitclvbgu5pgwxve2vmlrdsctpwbte2flb4i4hrz6/.hack_Roots (Dub) Episode 001-360p.mp4
我尝试使用HtmlAgilityPack 获取播放器代码,但它是p,a,c,k,e,d,我无法在我的C# Windows Phone 8.1 项目中执行它。想过用Jurassic包来执行JS,但是WinPhone8.1好像不行
这是我使用 HAP 获得的脚本:
<script type='text/javascript'>eval(function(p,a,c,k,e,d){while(c-- )if(k[c])p=p.replace(new RegExp('\\b'+c.toString(a)+'\\b','g'),k[c]);return p} ('15("14").13({f:"0://2.1:e/d/c/.b (a) 9 8- 7.6",12:"0://2.1/4/h.g",11:"0://2.1/i/10/z.y",x:"w",v:u,t:s,5:"0",r:"0://2.1/4/q /p",o:[{3:"n",m:"0://2.1/4/h.g"},{3:"l",k:{f:\'0://2.1:e/d/c/.b (a) 9 8- 7.6\',\'5\':\'0\'}},{3:"j"}],});',36,42,'http|com|mp4engine|type|player|provider|mp4|360p|001|Episode|Dub|hack_Roots|a2chmyndcqqgkpskitclvbgu5pgwxve2vmlrdsctpwbte2flb4i4hrz6||182|file|swf|jw6||download|config|html5|src|flash|modes|six|skins|skin|420|height|722|width|1484|duration|jpg|hahgl235zwv2|00000|image|flashplayer|setup|flvplayer|jwplayer'.split('|')))
我也尝试过使用内置的 WebView 控件:
WebView wv = new WebView();
//... navigation to string and all that
var res = await wv.InvokeScriptAsync("eval", null);
不幸的是,该函数返回空字符串(res = "")
我还搜索了可以解码的base64 字符串,但页面似乎没有。
如何获取视频网址?
【问题讨论】:
标签: c# video web-scraping windows-phone html-agility-pack