Edit: viens de voir vous avez trouvé la réponse... sheeeiiitttt
J'ai littéralement juste appris cela! Pour ce faire, vous n'avez même pas besoin de l'afficher dans UIWebView. (Mais que vous l'utilisez, vous pouvez simplement obtenir l'URL de la page en cours)
De toute façon, voici le code et quelques (faibles) explication:
//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];
Nous avons donc le code HTML, maintenant, comment pouvons-nous obtenir le titre? Eh bien, dans tous les html doc le titre est signalé par là, C'Est le Titre
C'est probablement la meilleure chose à faire est de la recherche de l'htmlCode chaîne pour et pour , et substring il nous obtenons donc le choses entre.
//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
Et c'est vraiment ça!
Donc en gros pour expliquer toutes les manigances se passe dans le docTitle, si nous avons fait une plage juste en disant NSMakeRange(startRange.emplacement, endRange.emplacement) nous permettrait d'obtenir le titre ET le texte de startString (qui est ) parce que la situation est par le premier caractère de la chaîne.
Afin de compenser cela, nous venons d'ajouter la longueur de la chaîne
Maintenant, gardez à l'esprit ce code n'est pas testé.. si il y a des problèmes, il pourrait être une erreur d'orthographe, ou que je n'ai pas/ne s'ajouter un pointeur quand je n'étais pas censé le faire.
Si le titre est un peu bizarre et pas complètement à droite, essayez de déconner avec le NSMakeRange-- je veux dire ajouter/soustraire différentes longueurs/emplacements des chaînes de --- tout ce qui semble logique.
Si vous avez des questions ou des problèmes, n'hésitez pas à demander. Cette ma première réponse sur ce site, donc désolé si c'est un peu désorganisé