Редактировать: только что увидел, что вы нашли ответ ... sheeeiiitttt
Я буквально только что узнал это! Для этого вам даже не нужно отображать его в UIWebView. (Но, поскольку вы используете его, вы можете просто получить URL текущей страницы)
В любом случае, вот код и некоторые (слабые) объяснения:
//create a URL which for the site you want to get the info from.. just replace google with whatever you want
NSURL *currentURL = [NSURL URLWithString:@"http://www.google.com"];
//for any exceptions/errors
NSError *error;
//converts the url html to a string
NSString *htmlCode = [NSString stringWithContentsOfURL:currentURL encoding:NSASCIIStringEncoding error:&error];
Итак, у нас есть HTML-код, а теперь как нам получить заголовок? Ну, в каждом документе на основе HTML заголовок сигнализируется Это название
Так что, вероятно, самое простое, что нужно сделать, это найти эту строку htmlCode, и для нее, и подставить ее подстроку, чтобы мы получили содержимое между ними.
//so let's create two strings that are our starting and ending signs
NSString *startPoint = @"<title>";
NSString *endPoint = @"</title>";
//now in substringing in obj-c they're mostly based off of ranges, so we need to make some ranges
NSRange startRange = [htmlCode rangeOfString:startPoint];
NSRange endRange = [htmlCode rangeOfString:endPoint];
//so what this is doing is it is finding the location in the html code and turning it
//into two ints: the location and the length of the string
//once we have this, we can do the substringing!
//so just for easiness, let's make another string to have the title in
NSString *docTitle = [htmlString substringWithRange:NSMakeRange(startRange.location + startRange.length, endRange.location)];
NSLog(@"%@", docTitle);
//just to print it out and see it's right
И это действительно так!
Таким образом, в основном, чтобы объяснить все махинации, происходящие в docTitle, если мы сделали диапазон, просто сказав NSMakeRange (startRange.location, endRange.location), мы бы получили заголовок И текст startString (который есть), потому что расположение первый символ строки.
Таким образом, чтобы компенсировать это, мы просто добавили длину строки
Теперь имейте в виду, что этот код не тестируется ... если есть какие-либо проблемы, это может быть орфографическая ошибка, или я не / не добавил указатель, когда я не должен был.
Если заголовок немного странный и не совсем правильный, попробуйте поиграться с NSMakeRange - я имею в виду, как добавлять / вычитать разные длины / местоположения строк - все, что кажется логичным.
Если у вас есть какие-либо вопросы или есть проблемы, не стесняйтесь спрашивать. Это мой первый ответ на этом сайте, извините, если он немного дезорганизован