Pixel Pedals of Tomakomai

北海道苫小牧市出身の初老の日常

WebViewのWebFrameからリンクの一覧を抜く

表題の通りの内容なんだけど、なにせサンプルもドキュメントもほとんどない(探し方悪いだけ?)。DOMに関してはW3C見ろってことか。結局は、ヘッダファイルからインタフェースを探して組んで見たら、こんな感じ。


	DOMDocument          *document;
DOMHTMLCollection *links;
DOMHTMLAnchorElement *aElement;
int len, i;

//リンクの一覧を作る
document = [frame DOMDocument];
links = [(DOMHTMLDocument *)document links];
len = [links length];
for(i = 0; i < len; i++){
aElement = (DOMHTMLAnchorElement *)[links item: i];
NSLog(@"%@ - %@", [aElement href], [document URLWithAttributeString: [aElement href]]);
}






結果だけ見たら、至極当たり前のコードですな。ちなみに、URLWithAttributeString:絶対パス化するのに必要かと思って入れたんだけど、始めから絶対パスで取れてるみたい。



後、ほんとは、フレームが複数ある時に辿る機能を追加実装する必要あり。