在 Objective C 中通过 xpath 获取输入元素
Getting an input element through xpath in Objective C
所以我正在玩 objective c 桌面应用程序(不是 iOS)。我正在将网页的内容加载到 WebView 中,我想用代码中的硬编码文本填写用户名等输入字段。
之后
- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame
被调用了,如何根据XPath获取元素?
例如对于 XPath,我想到达
/html/body/div[3]/div[3]/div[2]/div[2]/div/form/div[1]/div[2]/div[2]/div/div[8]/div/input
//*[@id="username"]
IMO,使用 JavaScript 操纵 HTML 比使用 XPath 更健壮和灵活,原因有很多。我建议您在 Web 视图中执行适当的 JavaScript。这是一个示例实现:
- (BOOL) insertFormFieldValues: (UIWebView *) webView
{
NSString *result = [webView stringByEvaluatingJavaScriptFromString:@"insert your javascript here"];
return result == RESULT_OK;
}
所以我正在玩 objective c 桌面应用程序(不是 iOS)。我正在将网页的内容加载到 WebView 中,我想用代码中的硬编码文本填写用户名等输入字段。
之后- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame
被调用了,如何根据XPath获取元素?
例如对于 XPath,我想到达
/html/body/div[3]/div[3]/div[2]/div[2]/div/form/div[1]/div[2]/div[2]/div/div[8]/div/input
//*[@id="username"]
IMO,使用 JavaScript 操纵 HTML 比使用 XPath 更健壮和灵活,原因有很多。我建议您在 Web 视图中执行适当的 JavaScript。这是一个示例实现:
- (BOOL) insertFormFieldValues: (UIWebView *) webView
{
NSString *result = [webView stringByEvaluatingJavaScriptFromString:@"insert your javascript here"];
return result == RESULT_OK;
}