如何将网站的特定部分(...)加载到UIWebView中?

时间:2014-07-03 19:23:18

标签: html ios uiwebview

我一直在寻找其他地方的答案和像我一样的问题,但却没有找到任何有用的主题。所以我在这里尝试做的只是从网页上获取一个td加载到UIWebview。我现在拥有的是:

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSString *fullURL = @"http://google.com";
    NSURL *url = [NSURL URLWithString:fullURL];
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
    [_viewWeb loadRequest:requestObj];
}

1 个答案:

答案 0 :(得分:0)

一般解决方案

如果你想让某个网站的一部分显示在其他地方你正在使用一种叫做抓取的技术。

http://www.raywenderlich.com/14172/how-to-parse-html-on-ios

获取刮擦的实际链接后:

首先,你需要找出XPath。我使用Firefox浏览器和Firebug插件,让我的生活更轻松。现在想象一下你想要的医生名单正在转移。按住CTRL键并单击它们所在的单元格并选择“使用Firebug进行检查”(我的浏览器恰好是荷兰语,应该是相同的图标)。

enter image description here

现在,您位于Firebug的HTML标签中,您应该看到我们正在查看的页面的嵌套源代码。如果您按CTRL并单击要阅读的TD并选择“复制XPath”,则表示您正在复制该节点的XPath。

enter image description here

在这种情况下,它是

/html/body/table/tbody/tr/td[1]/table/tbody/tr[2]/td[2]

要在Ray Wenderlich教程中访问该节点,您需要更改

// 1
NSURL *tutorialsUrl = [NSURL URLWithString:@"http://www.raywenderlich.com/tutorials"];

// 3
NSString *tutorialsXpathQueryString = @"//div[@class='content-wrapper']/ul/li/a";

// 1
NSURL *tutorialsUrl = [NSURL URLWithString:@"http://www.rmcva.net/"];

// 3
NSString *tutorialsXpathQueryString = @"/html/body/table/tbody/tr/td[1]/table/tbody/tr[2]/td[2]";

现在我不知道你想要用它做什么,当然这个例子是围绕一个项目列表构建的,但是当你使用调试器逐步完成它时,你应该能够得到结果。认为这应该让你开始。