자료 저장소

#HTML 파싱


  1. HTFpple.h
  2. HTFpple.m
  3. HTFppleElement.h
  4. HTFppleElement.m
  5. XPathQuery.h
  6. XPathQuery.m
1. 위 소스코드를 다운 받아 XCODE의 클래스 폴더에 폴더로 만들어서 통채로 집어넣는다 =ㅅ=

-Add libxml2 includes to your project

  1. Menu Project->Edit Project Settings
  2. Search for setting "Header Search Paths"
  3. Add a new search path "${SDKROOT}/usr/include/libxml2"
  4. Enable recursive option

-Add libxml2 library to to your project

  1. Menu Project->Edit Project Settings
  2. Search for setting "Other Linker Flags"
  3. Add a new search flag "-lxml2"
2. 위에서 시킨대로.. 프로젝트 셋팅에서 빌드 부분의 "Header Search Paths"를 찾아서 "$~ "를 추가한다.
3. 마찬가지로 "Other Linker Flags"를 찾아서 "-lxml2"를 추가한다.

이제 TFHpple 클래스 사용준비 완료!

[HTML 파싱 코드]

- (void)viewDidLoad {

    [superviewDidLoad];

NSString *htmlWillInsert = [[NSStringstringWithContentsOfURL:

[NSURLURLWithString:@"http://web2.kwangju.ac.kr/~gjh/sub03/sub03.php"]

encoding:-2147481280error:nil]

stringByReplacingOccurrencesOfString:@"<br>"withString:@" "];

NSData *htmlData = [htmlWillInsert dataUsingEncoding:NSUnicodeStringEncoding];

TFHpple *xpathParser = [[TFHpplealloc] initWithHTMLData:htmlData];

NSArray *elements = [xpathParser search:@"//table[@width=\"679\"]//td[@valign=\"top\"]"];

NSLog(@"%@",elements);

for(int i=0;i<[elements count];i++)

{

TFHppleElement *element = [elements objectAtIndex:i];

NSString *titleOfAlips = [element content];

NSLog(@"%@",titleOfAlips);

}

}


위 코드에서 사용된 xPath의 사용법 : http://www.w3schools.com/XPath/xpath_syntax.asp


학교 식단 메뉴를 파싱 ㅎ... 밥도 잘 안먹는데...-ㅅ-;; 

출처 : 그분(?) 



댓글 로드 중…

최근에 게시된 글