在 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;
}