我如何从互联网上下载像.doc,.pdf这样的文件 硬盘使用c#
答案 0 :(得分:5)
using (var client = new System.Net.WebClient())
{
client.DownloadFile( "url", "localFilename");
}
答案 1 :(得分:3)
使用WebClient
类:
using(WebClient wc = new WebClient())
wc.DownloadFile("http://a.com/foo.pdf", @"D:\foo.pdf");
根据评论进行修改:
基于您的评论我认为您要做的是下载即从HTML页面链接到的PDF文件。在那种情况下你可以
下载页面(使用WebClient, 见上文)
使用HtmlAgilityPack查找 页面中的所有链接 指向pdf文件
下载pdf文件
我正在开发一个爬虫,如果我 为例如:SHA算法指定关键字 我选择.pdf或.doc选项 从它应该下载的爬虫 选择格式为a的文件 目标文件夹..
根据您的澄清,这是一个使用谷歌获取搜索结果的解决方案:
DownloadSearchHits("SHA", "pdf");
...
public static void DownloadSearchHits(string searchTerm, string fileType)
{
using (WebClient wc = new WebClient())
{
string html = wc.DownloadString(string.Format("http://www.google.com/search?q={0}+filetype%3A{1}", searchTerm, fileType));
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
var pdfLinks = doc.DocumentNode
.SelectNodes("//a")
.Where(link => link.Attributes["href"] != null
&& link.Attributes["href"].Value.EndsWith(".pdf"))
.Select(link => link.Attributes["href"].Value)
.ToList();
int index = 0;
foreach (string pdfUrl in pdfLinks)
{
wc.DownloadFile(pdfUrl,
string.Format(@"C:\download\{0}.{1}",
index++,
fileType));
}
}
}
一般情况下,您应该问一个与您已经拥有的特定实施的特定问题相关的问题 - 根据您的问题,您很难实现独立的抓取工具
答案 2 :(得分:3)
最简单的方法是使用WebClient.DownloadFile
答案 3 :(得分:1)
使用System.Net中的WebClient.DownloadFile()
答案 4 :(得分:0)
使用WebClient.DownloadFile
http://msdn.microsoft.com/en-us/library/system.net.webclient.downloadfile.aspx
using (var client = new WebClient())
{
var data = client.DownloadFile(url, filename);
}