-
Notifications
You must be signed in to change notification settings - Fork 111
About
Raja Tomar edited this page Jun 7, 2019
·
1 revision
You can contribute in many ways:
- become a patreon https://patreon.com/truecode
- give it a star on github repo
- reporting bugs on github repo: https://github.com/rajatomar788/pywebcopy/ or at my email.
- creating pull requests on github repo: https://github.com/rajatomar788/pywebcopy/
- sending a thanks mail
If you have any suggestions or fixes or reports feel free to mail me :)
I built many utils and classes in this project to ease the tasks I was trying to do.
But, these task are also suitable for general purpose use.
So,
if you want, you can help in generating suitable documentation
for these undocumented ones,
then you can always create and pull request or email me.
-
Breaking Change New command-line interface using
Python Fire
library. - Implemented type checks and path normalising in the
config.setup_paths
. - added new dynamic
pywebcopy.__all__
attr generation. -
WebPage
class now doesnt take any argument (breaking change) -
WebPage
class has new methodsWebPage.get
andWebPage.set_source
- Queuing of downloads is replaced with a barrier to manage active threads
- Optimization of existing code, upto 5x speed ups in certain cases
- Removed cluttering, improved readability
- A complete rewrite and restructuring of core functionality.
-
core.setup_config
function is changed toconfig.setup_config
.
- added
utils.trace
decorator, which will print function_name, args, kwargs and return value when debug config key is True. - new html-parsers ('html5lib', 'lxml') are supported for better webpages.
- html-parser is now defaulted to 'lxml'. You can use any through new
config.config
key calledparser
- fixed issue while changing
user-agent
key cracked webpages. You can now use any browser's user-agent id and it will get exact same page downloaded. - fixed issue in
generators.extract_css_urls
which was caused bystr
andbytes
difference in python3. - fixed issues in modules importing. (Thanks "Илья Игоревич").
- added
errorhandling
to required functions
-
init
function is replaced withsave_webpage
- three new
config
automation functions are added --
core.setup_config
(creates every ideal config just from url and download location) -
config.reset_config
(resets the configuration to default state) -
config.update_config
(manual-mode version ofcore.setup_config
)
-
- object
structures.WebPage
added - merged
generators.generate_style_map
andgenerators.generate_relative_paths
to a single functiongenerators.generate_style_map
- rewrite of majority of functions
- new module
exceptions
added
-
url
is checked and resolved of any redirection before starting any work functions. -
init
vars :mirrors_dir
andclean_up
were fixed which cleaned the dir before the log was completely written. -
init
call now takesurl
arg by default and could raise a error when not supplied - professional looking log entries
- rewritten archiving system now uses
zipfile
andexceptions
handling to prevent errors and eventual archive corruption
- more redundant code
- modules are now separated based on type e.g. Core, Generators, Utils etc.
- new helper functions and class
structures.WebPage
- Compatible with Python 2.6, 2.7, 3.6, 3.7