#file #uri #html-agility-pack
#файл #uri #html-agility-pack
Вопрос:
Например, для этого URL-адреса он не отображает его как файл
http://www.darty.com.tr/e_commerce/ximg/yeniyil/darty garanty brosur.pdf
Но это файл PDF. Итак, я хочу просто определить все URL-адреса, которые нельзя сканировать, как pdf или doc или docx и т.д. Как я могу это сделать с c # 4.0 и htmlagilitypack?
Спасибо.
Не распознается как файл:http://img695.imageshack.us/img695/61/notshowasfile.png
Комментарии:
1. Что вы подразумеваете под «не отображает его как файл»? Это является файлом.
2. Джо Уайт вот что я имею в виду: img695.imageshack.us/img695/61/notshowasfile.png
Ответ №1:
Uri
является частью базовой платформы .NET Framework — это не имеет ничего общего с пакетом HTML Agility Pack.
Это также не имеет никакого отношения к тому, что это PDF. В документации для Uri.IsFile
говорится:
Свойство isFile имеет значение true, когда свойство Scheme равно UriSchemeFile.
Другими словами, IsFile
отвечает на вопрос: «Является ли это file://
URI«? Поскольку это http://
URI, ответ отрицательный.
Вы, кажется, путаете URL-адреса с контентом. Uri
Это просто причудливая строка; его задача — быть URI, а не выходить на сервер и задавать вопросы о содержимом по этому URL. На вопрос «Это тип файла, который я знаю, как сканировать?» нельзя ответить, посмотрев на URL; http://example.com/articles/123
это может быть веб-страница, или PDF, или текстовый файл, или JPEG, или любая из тысячи других вещей. Вы должны выполнить запрос GET или HEAD на сервер и посмотреть на возвращаемый тип содержимого, чтобы узнать, какой тип содержимого представляет этот URL.
Комментарии:
1. итак, как возглавить запрос и определить, является ли это страницей или файлом?
2. Люди, которые знают этот ответ, не будут рассматривать этот вопрос об Uri.isFile. Попробуйте опубликовать новый вопрос.