iOS WebView > Display only main-content from a web

2019-09-13 04:10发布

问题:

How do I fetch just the main-content part of a webpage and display it in an UIWEBVIEW? Link to the page

When I look at the code of the webpage I see that the 'What is new?' posts appear below:

<div id="content-header" class="clearfix">
                  <a name="main-content" id="main-content"></a>
          <h1 class="title">Aktuell</h1>                                      </div> <!-- /#content-header -->

Is it possible to relate to id="main-content within the UIWEBVIEW to display just this part of the website instead of the whole page?

Screenshot shows visually what I like to get.

P.S This is my code to display the whole webpage:

- (void)viewDidLoad
{
    [super viewDidLoad];

    NSString *golfClubURL = @"http://golfplatz-altenstadt.de";

    NSURL *loungeURL = [NSURL URLWithString:golfClubURL];

    NSURLRequest *myrequest = [NSURLRequest requestWithURL:loungeURL];

    [self.webView loadRequest:myrequest];

    self.webView.scalesPageToFit = YES;
}

回答1:

The process to make this work is to load the URL in to a string, and then modify the string, and then send the string to display in the UIWebView.

It will require you to parse the html. You will probably be best off cutting out just what part you want, and adding in a header and footer.

You might want to look at NSURLConnection

Do you own the website? You might want to create an alternative page of the site that shows a more mobile friendly version of the page. If it is a blog, or running something like wordpress there are plug-ins for mobile templates. This has an added benefit of giving a fast easy to read version of the site for anyone using any mobile device.