Полное извлечение файлов U-SQL (извлечение полного исходного кода из файлов html)

У меня есть куча HTML-файлов в моем Data Lake Store, и я хотел бы получить их полный исходный код в виде таблицы (всего одна колонка с кодом из всех файлов, формат вывода для меня не актуален, но, вероятно, tsv ). Я не могу найти способ использовать стандартные экстракторы или что-либо в Интернете, которое мне подходит. Должен ли я писать собственный экстрактор для этого?

Я пробовал Extractors.Tsv() и Extractors.Text() с целой кучей разделителей. Я сначала попробовал:

@data =
EXTRACT source string
FROM "<MY DIRECTORY IN ADL>"
USING Extractors.Text(delimiter:'');

Это не сработало, так как мне не нравится отсутствие разделителя, но также, когда я пытался использовать разделители, которых нет в html-файлах, это не сработало.

У кого-нибудь есть идея, как это сделать? Мне кажется, что я просто тупой, поэтому я надеюсь, что кто-то здесь немного умнее.

Было бы даже лучше, чем просто исходный код, если бы у меня был исходный код + имя файла в двух столбцах, но я хочу начать с малого.

Благодарю вас!


person Friedrich Staufenbiel    schedule 06.10.2017    source источник
comment
Это все еще проблема? Смотрите мой комментарий к ответу Дэвида.   -  person Michael Rys    schedule 14.01.2018


Ответы (1)


@файлы =

EXTRACT FileName string,
        Text string
FROM @"/somepath/{FileName}.html"
USING Extractors.Text(silent: true, delimiter: '`');

OUTPUT @files TO "/somepath/Test.txt" USING Outputters.Tsv(outputHeader: false, quoting: false);

person David Paul Giroux    schedule 06.10.2017
comment
Спасибо за ваш ответ! Я попробовал это, но все еще получаю сообщение об ошибке (такое же, как и раньше): Произошла ошибка при извлечении строки после обработки 722 записей во входном разделении вершины. Индекс столбца: 0, имя столбца: «Текст». Вершина завершилась ошибкой fail-fast. Вы случайно не поняли, почему это происходит? - person Friedrich Staufenbiel; 09.10.2017
comment
Извините за задержку с ответом. Вероятно, у вас есть какая-то ошибка формата (значение, которое невозможно проанализировать, потому что оно слишком велико, слишком много столбцов и т. д.). Обычно это должно отображаться во внутреннем сообщении об ошибке, но в октябре эта внутренняя ошибка не отображалась. Я надеюсь, что вы смогли выяснить, что вызвало ошибку. - person Michael Rys; 14.01.2018