stringByEvaluatingJavaScriptFromString:をご覧ください。これを使用して、興味のあるタグを見つけたスクリプトを実行し、興味のあるデータを文字列として返します。一度に多くのデータを取得したい場合は、JSONを渡す際にJSONを使用するのが最も簡単でしょう。例:
NSString *jsonString = [webView stringByEvaluatingJavaScriptFromString:@"var result = {}; var imgs = document.getElementsByTagName('img'); for (x = 0; x < imgs.length; x++) { result[x] = {'src': imgs[x].src, 'width': imgs[x].offsetWidth, 'height': imgs[x].offsetHeight}; } result = JSON.stringify(result);"];
NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
NSError *error = nil;
NSArray *imgArray = [NSJSONSerialization JSONObjectWithData:jsonData options:0 error:&error];
だから、今、あなたはすべての画像、あなたが興味を持った属性を持つNSArray
を持っているthird-party librariesはあなたが必要な場合は、そこにありますがNSJSONSerialization
は、iOSの5またはOS X 10.7を必要としないことに注意してください。以前のOSバージョンをサポートします。 (stringByEvaluatingJavaScriptFromString:
はiOS 2.0と10.2.7に戻ります)
ああ素晴らしいです!私のために人生をはるかに簡単にする母、ありがとう! – Chris