如何使用Objective c从cocoa中获取WebFrame的span值

时间:2013-11-11 13:00:20

标签: iphone objective-c cocoa webkit

我正在使用以下代码在加载Web视图后获取html值并能够以字符串

获取响应
- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame
{   
    WebDataSource *source = [frame dataSource];
    NSData *data = [source data];
    NSString *str = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];   
    NSLog(@"String ::: %@",str);
}

这是我在str中的html响应:

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

        <link rel="stylesheet" type="text/css" href="style.css" />        
            </head>
        <body>
        <div id="hidden" hidden="true">
            <span id="u-email">something@gmail.com</span>
        </div>
    </body>
    </html>

我需要获得span的隐藏值:

代表:

<span id="u-email">something@gmail.com</span>

如何在可可框架的Webview中获取span值(something@gmail.com)

请指教!

2 个答案:

答案 0 :(得分:1)

查看此链接“http://www.raywenderlich.com/14172/how-to-parse-html-on-ios”。它可能会帮助你。

答案 1 :(得分:1)

你可以尝试 stringByEvaluatingJavaScriptFromString

e.g。

NSString *function = [NSString stringWithFormat:@"document.getElementById('u-email').innerHTML"];
NSString *result = [webView stringByEvaluatingJavaScriptFromString:function];