ios 웹 페이지 의 내용 가 져 오기 또는 수정

UIWebView 는 iOS 에서 가장 자주 사용 하 는 SDK 중 하나 로 stringByEvaluatingJavaScriptFromString 방법 으로 자 바스 크 립 트 를 페이지 에 삽입 할 수 있 습 니 다.이 방법 을 통 해 우 리 는 iOS 에서 UIWebView 의 웹 요소 와 상호작용 을 할 수 있 습 니 다.
stringByEvaluatingJavaScriptFromString
    stringByEvaluatingJavaScriptFromString 방법 을 사용 하려 면 UIWebView 의 페이지 를 불 러 온 후에 호출 해 야 합 니 다.우리     위 에 UIWebView 컨트롤 을 끌 어 다 놓 습 니 다.Load 에서 google mobile 을 이 컨트롤 에 불 러 옵 니 다.코드 는 다음 과 같 습 니 다.

- (void)viewDidLoad
 {
   [super viewDidLoad];
   webview.backgroundColor = [UIColor clearColor]; 
  webview.scalesPageToFit =YES;
  webview.delegate =self;
  NSURL *url =[[NSURL alloc] initWithString:@"http://www.google.com.hk/m?gl=CN&hl=zh_CN&source=ihp"];
  NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];
  [webview loadRequest:request];  
}
우 리 는 웹 뷰 Did FinishLoad 방법 에서 자바 script 을 통 해 인터페이스 요 소 를 조작 할 수 있 습 니 다.
1.현재 페이지 의 url 가 져 오기.

- (void)webViewDidFinishLoad:(UIWebView *)webView {  
  NSString *currentURL = [webView stringByEvaluatingJavaScriptFromString:@"document.location.href"]; 
2,페이지 제목 가 져 오기:

NSString *title = [webview stringByEvaluatingJavaScriptFromString:@"document.title"];
3.인터페이스 요소 의 값 을 수정 합 니 다.

NSString *js_result = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByName('q')[0].value='   ';"]; 
4.양식 제출:

NSString *js_result2 = [webView stringByEvaluatingJavaScriptFromString:@"document.forms[0].submit(); "]; 
5.모든 html 가 져 오기

NSString *allHtml = @"document.documentElement.innerHTML";
NSString *allHtmlInfo = [webView stringByEvaluatingJavaScriptFromString:allHtml];
6.웹 페이지 의 값 가 져 오기

NSString *htmlNum = @"document.getElementById('title').innerText";
NSString *numHtmlInfo = [webView stringByEvaluatingJavaScriptFromString:htmlNum];
7.js 코드 삽입
위의 기능 은 js 함수 에 봉 하여 이 함 수 를 페이지 에 삽입 하여 실행 할 수 있 습 니 다.코드 는 다음 과 같 습 니 다.

if ([title compare: @"Google"]==NSOrderedSame ) { 
 
  [webView stringByEvaluatingJavaScriptFromString:@"var script = document.createElement_x('script');"  
   "script.type = 'text/javascript';"  
   "script.text = "function myFunction() { "  
   "var field = document.getElementsByName('q')[0];"  
   "field.value='   ';"  
   "document.forms[0].submit();"  
   "}";"  
   "document.getElementsByTagName_r('head')[0].appendChild(script);"];   
   
  [webView stringByEvaluatingJavaScriptFromString:@"myFunction();"];  
} 
위의 코드 보기:
a.먼저 js 를 통 해 script 라벨 을 만 듭 니 다.type 은'text/javascript'입 니 다.
b.그리고 이 탭 에 문자열 을 삽입 합 니 다.이 문자열 은 함수 입 니 다.my Function,이 함 수 는 구 글 이 키 워드 를 자동 으로 검색 하 는 기능 을 실현 합 니 다.
c.그리고 stringByEvaluatingJavaScriptFromString 을 사용 하여 my Function 함 수 를 실행 합 니 다.
위 에서 말 한 것 은 편집장 이 여러분 에 게 소개 한 ios 가 웹 페이지 의 내용 을 얻 거나 수정 하 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 저 에 게 메 시 지 를 남 겨 주세요.편집장 은 제때에 여러분 에 게 답 할 것 입 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기