Web screenshot archiver

I need 2 programs written in [url removed, login to view] (pref c++)

1. Web screenshot archiver

Overview: the user creates projects which consist of lists of URLs. The user schedules each project to go to each url in turn, wait for the webpage to load and then takes a screenshot of the entire page (including scrolling) nd saves it to a user defined filename as a jpg.

2. CD Archiver

This program burns selected archive projects created in 1 to a CD.

## Deliverables

1. Web screenshot archiver

Detailed Operation:

This program allows the user to create, edit and delete 'Projects'

A project consists of:

a) Baseline_Dir : a path to a directory containing a bunch of directories and files.

b) Root_Dir : a path to a directory

c) A list of "website_URL" objects - each website_url objects has a bunch of properties - see later

d) date_offset : a signed integer

e) project_name : a string describing the project

f) scheduled time: a time of day

g) enable_archiving : a bool

8) last_archive_successful : a bool

9) Last_Run : Date and time of last archive


Main Dialog = Project_Dialog : A list box with 4 columns and a row for each project.

Columns: Project_Name,

Last_Run (date and time of last archive),

Result (whether last archive was successful),


Three buttons below the list box: Add, Edit, Delete

Add BUtton: Creates new project. ie prompts for new project name, asks if you want it to be a copy of an existing project, and then opens proj_edit_dialog

Edit Button: Brings up proj_edit dialog for selected project and allows editing of project properties a to e above.

Delete Button: Prompts: Are you sure? Then deletes project.

Website_url object:

Each project can have many of these. Each object consists of:

a) url_description - a string e.g. "Google home page"

b) address - eg "http"//[url removed, login to view]"

c) file path - filepath relative to Root_Dir where the screenshot of this webpage will be saved

d) filename - name of jpg file

Screen_capture archive routine:

At the scheduled time the program will do the following for each project that is enabled:

1) Create a directory structure using the current date +/- date_offset in the Root_Dir

eg: if current date = 23 April 2006, Root_Dir = e:/my_archives/fred and date_offset=-1 then the dir structire to create is:


2) Copy the contents of Baseline_Dir into this directory

For Each URL:

3) Go to URL address in browser and wit for page to load (including any add-ins like flash/javascript). If there is a problem loading the page then continue but log the problem to a file and set project's last_archive_successful bit to false

4) Use SnagIt8 API to get a high quality jpg of the entire page.

5) save jpg to filepath created in 1) + url's relative filepath+filename

End loop

6) Update Lsat_Run time for the project

That's it for the 1st program


2nd Program - CD Burning program

This proram's dialog consists of 4 combo-boxes and a button labeled "Burn"

Combo Box 1: Project Name This contains a list of all projects created by the 1st program.

Combo Box 2: Year A list of all the years availiable as archives for the selected project

Combo Box 3: Month A list of all the months available for the selected year and project

Combo Box 4: Day A list of all the days available for the selected month, year and project

The burn button is enabled when each combo box has selected a valid value

When the burn button is pressed:

1) It prompts for the customer name

2) It burns the contents of the relevant directory eg: e:/my_archives/fred/2006/April/22/ to the root dir of the CD

3) It verified that the burn was successful

4) It writes to one row of a log file: customer name, date of archive and date burned

5) It brings up a message box with the customer name and the archive date, and the message "Please Label Disc"

6) When OK pressed, it brings up a dialog with a blank text-area and a 'print' button and asks the user to paste the address into the box

7) When print is pressed it writes the address to the current row of the log file and prints the address to a DYMO 310 label printer (can use the DYMO SDK)


1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.

2) Deliverables must be in ready-to-run condition, as follows b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.

3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).

4) I am happy for you to use GPL code as the software will not be redistributed or sold.

## Platform

win xp, ie 5+

Habilidades: Engenharia, Microsoft, MySQL, PHP, Arquitetura de software, Teste de Software, Área de trabalho do Windows

Veja mais: web archiver, web page editing software, web page consist of, web 2 properties, web 2 programs, programs new web, problem archive, loop net, javascript vs, edit google web page, copy editing for the web, bit operation, archive problem, source code vs object code, javascript print time, create new web address, work on existing sdk, wit, web page copy editing, screenshot editing

Acerca do Empregador:
( 91 comentários ) Australia

ID do Projeto: #3451184

3 freelancers estão ofertando em média $232 para esse trabalho


See private message.

$212.5 USD in 22 dias
(4 Comentários)

See private message.

$255 USD in 22 dias
(13 Comentários)

See private message.

$229.5 USD in 22 dias
(4 Comentários)