使用htmlagilitypack如何确定URI是否为文件

时间:2011-10-16 14:44:34

标签: file uri html-agility-pack

例如,对于此网址,它不会将其显示为文件

http://www.darty.com.tr/e_commerce/ximg/yeniyil/darty%20garanty%20brosur.pdf

但它是一个pdf文件。所以我想要的只是确定所有不能像pdf或doc或docx那样被抓取的网址。我怎样才能用c#4.0和htmlagilitypack做到这一点?

谢谢。

无法识别为文件:http://img695.imageshack.us/img695/61/notshowasfile.png

1 个答案:

答案 0 :(得分:1)

Uri是基础.NET Framework的一部分 - 这与HTML Agility Pack无关。

这也与PDF无关。 Uri.IsFile的文档说:

  

当Scheme属性等于UriSchemeFile时,IsFile属性为true。

换句话说,IsFile回答了问题,“这是file:// URI”吗?由于这是一个http:// URI,答案是否定的。

您似乎将网址与内容混淆。 Uri只是一个奇特的字符串;它的工作是一个URI,而不是去服务器并询问有关该网址 内容的问题。 “这是一种我知道如何爬行的文件类型吗?”通过查看URL无法回答; http://example.com/articles/123可以是网页,PDF或文本文件或JPEG或其他任何一种。您必须向服务器执行GET或HEAD请求,并查看返回的Content-Type,以了解URL所代表的内容类型。