Wpull is a Wget-compatible (or remake/clone/replacement/alternative) web downloader and crawler.
Notable Features:
- Written in Python: lightweight, modifiable, robust, & scriptable
- Graceful stopping; on-disk database resume
- PhantomJS & youtube-dl integration (experimental)
Wpull uses Python 3.
Once Python is installed, download Wpull from PyPI using pip:
pip3 install wpull
For detailed installation instructions and potential caveats, please see https://wpull.readthedocs.io/en/master/install.html.
To download the About page of Google.com:
wpull google.com/about
To archive a website:
wpull billy.blogsite.example \
--warc-file blogsite-billy \
--no-check-certificate \
--no-robots --user-agent "InconspiuousWebBrowser/1.0" \
--wait 0.5 --random-wait --waitretry 600 \
--page-requisites --recursive --level inf \
--span-hosts-allow linked-pages,page-requisites \
--escaped-fragment --strip-session-id \
--sitemaps \
--reject-regex "/login\.php" \
--tries 3 --retry-connrefused --retry-dns-error \
--timeout 60 --session-timeout 21600 \
--delete-after --database blogsite-billy.db \
--quiet --output-file blogsite-billy.log
To see all options:
wpull --help
Documentation is located at https://wpull.readthedocs.io/. Please have a look at it before using Wpull's advanced features.
Need help? Please see our Help page which contains frequently asked questions and support information.
The issue tracker is located at https://github.com/chfoo/wpull/issues.
Contributions and feedback are greatly appreciated.
Copyright 2013-2016 by Christopher Foo and others. License GPL v3.
This project contains third-party source code licensed under different terms:
- wpull.backport.logging
- wpull.thirdparty.robotexclusionrulesparser
- wpull.thirdparty.dammit
We would like to acknowledge the authors of GNU Wget as Wpull uses algorithms from Wget.