我在objectiveC中有一个iOS应用程序,它使用UIWebView加载网页。我想解析该网页的Open Graph元标记 -
<meta property="og:locale" content="en_US" />
<meta property="og:title" content="My Title" />
<meta property="og:site_name" content="My Content" />
使用以下代码,我可以遍历所有元标记并获取其内容,但如何检查我感兴趣的元属性?
NSString *resultStr = [self.viewWeb stringByEvaluatingJavaScriptFromString:
@"(function(){"
"var i, metaFields = document.getElementsByTagName(\"meta\"), result = [];"
"for (i = 0; i< metaFields.length; i++) {"
"result.push({\"content\": metaFields[i].content});"
"}"
"return JSON.stringify(result);"
"})();"
];
NSArray *result = [NSJSONSerialization JSONObjectWithData:[resultStr dataUsingEncoding:NSUTF8StringEncoding] options:0 error:nil];
NSLog(@"result: %@", result);
例如,如果我只对“og:site_name”感兴趣,我该如何检查它?我尝试过“metaFields [i] .property”,但似乎无法通过这种方式访问属性。我想做一些像 -
"if (metaFields[i].property === \"og:site_name\")"
谢谢,
答案 0 :(得分:1)
您是否尝试过对元素使用getAttribute DOM方法?类似的东西:
metaFields[i].getAttribute('property')