HTML Image String Parser - PullRequest
       9

HTML Image String Parser

0 голосов
/ 20 февраля 2012

Мне было интересно, есть ли у кого-нибудь идеи по моей проблеме.Мне нужно извлечь все файлы изображений из HTML-файла, загруженного UIWebView.У меня есть файл, загруженный в NSString, и теперь нужно проанализировать файл.Я прошел через создание массива с компонентами SeparatedByString в поиске .jpg, .gif и т. Д. Затем попытался вернуться назад, чтобы добраться до начала файла.Моим лучшим решением было бы иметь возможность проанализировать HTML-файл в NSArray, содержащий img src = "source" width = "" height = "" etc

Любая помощь или советы будут оценены.Мое последнее желание было выполнить поиск / замену слева направо всего файла, чтобы найти нужные мне строки, но надеюсь, что есть более быстрый путь.

1 Ответ

0 голосов
/ 20 февраля 2012

Не разбирать HTML, используйте libxml2 . Он обладает широким набором HTML-ориентированных функций анализа / обхода, которые позволяют программно перемещаться по документу.

У меня нет примера кода, ориентированного на HTML, но нужно всего лишь htmlReadDoc(), чтобы получить разобранный документ; а затем адаптируйте свой обход из примера дерева чтения .

void print_element_names(xmlNode * a_node)
{
    xmlNode *cur_node = NULL;

    for (cur_node = a_node; cur_node; cur_node = cur_node->next) {
        if (cur_node->type == XML_ELEMENT_NODE) {
            printf("node type: Element, name: %s\n", cur_node->name);
        }

        print_element_names(cur_node->children);
    }
}

// ... call your version of this function with the root node of the document
...