你能用httpclient递归下载一个路径吗?

时间:2016-01-30 14:54:34

标签: java httpclient

我想知道 - 是否可以通过httpclient或类似的Java库递归下载路径(就像你可以使用wget -r ...)?我是否需要从头开始实现,或者是否有可以使用的现有库/爬虫?

你会推荐什么?

1 个答案:

答案 0 :(得分:1)

我不知道有一个直接方法的库。但这是我的解决方案:

1)使用JSOUP获取链接。

openFileDialog.DefaultExt = "mp3";
openFileDialog.Filter = "MP3 Files (*.mp3)|*.mp3";
openFileDialog.Multiselect = false;

2)现在下载所有文件。如果您可以使用apache common IO,请执行以下操作:

Click

否则

private void coverButton_Click(object sender, EventArgs e)
{
    var dialogResult = openFileDialog.ShowDialog(this);

    if (dialogResult == DialogResult.OK)
    {
        TagLib.File file = TagLib.File.Create(openFileDialog.FileName);
        var mStream = new MemoryStream();
        var firstPicture = file.Tag.Pictures.FirstOrDefault();
        if (firstPicture != null)
        {
            byte[] pData = firstPicture.Data.Data;
            mStream.Write(pData, 0, Convert.ToInt32(pData.Length));
            var bm = new Bitmap(mStream, false);
            mStream.Dispose();
            coverPictureBox.Image = bm;
        }
        else
        {
            // set "no cover" image
        }
    }
}