I need a tool that can backup a navigable, offline copy of a website created with Angular + React
Budget: $30 – $250 USD
https://docs.google.com/document/d/1CPSv4ou6IUbMeGpE10RDS0V5VwF0CbshqcjRZ57gmYc/edit?usp=sharing
Project goal:
I need a tool that can save an offline copy of a website built on Angular + React for the purposes of incremental backup, change detection, and regression testing.
Requirements:
- Tool must save all rendered HTML as an offline copy. The offline copy must be fully navigable and visible and behave like the online copy in the absence of an internet connection.
- Tool must be able to handle simple webform authentication (username + password login)
- Tool must be able to save fully rendered HTML pages from javascript
- Tool must be able to navigate javascript buttons and resolve javascript links
- Tool must be able to save all downloaded site assets such as CSS and Javascript so that on successive runs, it pulls from saved cache rather then redownloading
- Tool must be able to optionally save all offsite assets (if specified on the command line), and only download assets which have changed or do not already exist.
- Tool must provide a CVS file which contains page, page section, resource link, resource link text
- Tool prints progress of what is happening in offline saving process
- Tool must provide a log of any changed content, including text, images, and offsite assets (audio, video, documents, …)
- Tool must be able to run from command line with URL and other basic options as command line arguments on any standard OS (particularly Windows and Linux)
Sourcecode requirements:
- Code is checked in to specified repository
- Code has no outstanding issues by the time project is complete
- Code is readable, modular, and well-commented
- Code does reasonable checks for edge cases
- Code reports errors meaningfully
- Agreement that submitted code is my property to use freely including releasing into the public domain
Preferred skillset:
- Python 3 with standard libraries
- Pyputteer - for navigation and headoless javascript rendering to HTML
- BeautifulSoup - for page scraping of section titles and links
- Other libraries are okay to use if they solve the above problem elegantly
- Javascript or Typescript with relevant libraries okay but Python preferred
Project goal:
I need a tool that can save an offline copy of a website built on Angular + React for the purposes of incremental backup, change detection, and regression testing.
Requirements:
- Tool must save all rendered HTML as an offline copy. The offline copy must be fully navigable and visible and behave like the online copy in the absence of an internet connection.
- Tool must be able to handle simple webform authentication (username + password login)
- Tool must be able to save fully rendered HTML pages from javascript
- Tool must be able to navigate javascript buttons and resolve javascript links
- Tool must be able to save all downloaded site assets such as CSS and Javascript so that on successive runs, it pulls from saved cache rather then redownloading
- Tool must be able to optionally save all offsite assets (if specified on the command line), and only download assets which have changed or do not already exist.
- Tool must provide a CVS file which contains page, page section, resource link, resource link text
- Tool prints progress of what is happening in offline saving process
- Tool must provide a log of any changed content, including text, images, and offsite assets (audio, video, documents, …)
- Tool must be able to run from command line with URL and other basic options as command line arguments on any standard OS (particularly Windows and Linux)
Sourcecode requirements:
- Code is checked in to specified repository
- Code has no outstanding issues by the time project is complete
- Code is readable, modular, and well-commented
- Code does reasonable checks for edge cases
- Code reports errors meaningfully
- Agreement that submitted code is my property to use freely including releasing into the public domain
Preferred skillset:
- Python 3 with standard libraries
- Pyputteer - for navigation and headoless javascript rendering to HTML
- BeautifulSoup - for page scraping of section titles and links
- Other libraries are okay to use if they solve the above problem elegantly
- Javascript or Typescript with relevant libraries okay but Python preferred