https://github.com/deankarn/go-download
Library for interruptable, resumable download acceleration with automatic Accept-Ranges support
https://github.com/deankarn/go-download
dowload downloader partialcontent
Last synced: about 1 year ago
JSON representation
Library for interruptable, resumable download acceleration with automatic Accept-Ranges support
- Host: GitHub
- URL: https://github.com/deankarn/go-download
- Owner: deankarn
- License: bsd-2-clause
- Created: 2017-04-17T14:52:00.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-05-29T01:28:05.000Z (about 9 years ago)
- Last Synced: 2024-05-14T10:06:17.903Z (about 2 years ago)
- Topics: dowload, downloader, partialcontent
- Language: Go
- Homepage:
- Size: 42 KB
- Stars: 43
- Watchers: 3
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Package go-download
===================

[](https://travis-ci.org/joeybloggs/go-download)
[](https://coveralls.io/github/joeybloggs/go-download?branch=master)
[](https://goreportcard.com/report/github.com/joeybloggs/go-download)
[](https://godoc.org/github.com/joeybloggs/go-download)

Package go-download provides a library for interruptable, resumable download acceleration with automatic Accept-Ranges support
It Features:
- [x] Customizable concurrency and/or chunk size. default is 10 goroutines
- [x] Proxy of download eg. to display a progress bar
## Installation
```shell
go get -u github.com/joeybloggs/go-download
```
or if your looking for the standalone client
```shell
go get -u github.com/joeybloggs/go-download/cmd/goget
```
## Examples
More examples [here](https://github.com/joeybloggs/go-download/tree/master/_examples)
```go
package main
import (
"log"
download "github.com/joeybloggs/go-download"
)
func main() {
// no options specified so will default to 10 concurrent download by default
f, err := download.Open("https://storage.googleapis.com/golang/go1.8.1.src.tar.gz", nil)
if err != nil {
log.Fatal(err)
}
defer f.Close()
// f implements io.Reader, write file somewhere or do some other sort of work with it
}
```
## Contributing
Pull requests, bug fixes and issue reports are welcome.
Before proposing a change, please discuss your change by raising an issue.
## License
Distributed under BSD 2-clause license, please see license file in code for more details.