2012-03-05 26 views
1

我試圖從.htm源文件中提取url,該文件包含3個其他的url內部的java腳本code.I'm試圖使用Hpple。使用Hpple解析iPhone上的Java腳本的URL

如何解析在iPhone上下面的的.htm源代碼下「文件」網址:

<html> 
<head> 
<script type="text/javascript" src="http://mydomain/jwplayer/jwplayer.js"></script> 
</head> 
<body> 
<div id='container'>Player should appear here</div> 
<script type='text/javascript'> 
jwplayer('container').setup({ 
'flashplayer': 'http://mydomain/directory1/jwplayer/player.swf', 
'controlbar.position': 'bottom', 
'controlbar.idlehide': 'false', 
'width': '550', 
'height': '300', 
'autostart': 'true', 
'icons': 'true', 


'playlist': [{ 
'file': 'http://http://mydomain/directory1/english/audio1.m4a', 
},{ 
    'file': 'http://http://mydomain/directory1/english/audio2.m4a', 
},{ 
'file': 'http://http://mydomain/directory1english/audio3.m4a', 
}], 
repeat: 'list' 


}); 


</script> 
</body> 
</html> 
+0

@ Winston-你好先生,我有同樣的問題,我按照你的方式,,請告訴我如何可以解決你的問題,我不能解決它:( – iPatel 2013-02-27 07:10:50

+0

嗨iPatel,我使用RaptureXML來解析HTML內容,然後我使用正則表達式來抓取需要的url,我可以給你發一些代碼,如果有幫助你的話。 – Winston 2013-02-27 15:40:04

+0

@ Winston..many非常感謝重播..請將代碼發送到[email protected],同時參見我的Q-http://stackoverflow.com/questions/15128700/get-specific-value-between-javascript-function-by-nsregularexpression – iPatel 2013-02-28 06:28:17

回答

2

<script>標籤的內容不是HTML,所以hpple贏得」不能解析它。你想要做的就是用hpple得到<script>標籤的內容:

TFHpple *doc = [[TFHpple alloc] initWithHTMLData:data]; 
NSString *scriptElement = [[doc searchWithXPathQuery:@"//script"] lastObject]; 
NSString *scriptContent = [scriptElement content]; 

然後用NSRegularExpression讓這些網址離開那裏。

+0

謝謝,工作很好! – Winston 2012-03-07 12:53:53

+0

你好先生,我有同樣的問題,我按照你的方式,請告訴我如何解決你的問題,我不能解決它:( – iPatel 2013-02-27 07:11:32