DiggerDiff is a program that helps you watch for changes on web pages you are interested in. I wrote it to watch the job pages of local employers, to help with job-hunting. It fetches each page in its list and compares the contents against an older copy of that page and displays the results. If a page has changed, it will let you view the differences between the old and new versions so you can easily spot what has changed.
You can specify multiple search and replace expressions to apply to the local copies of each page before comparison. This can be useful to minimize the changes displayed for pages that often have predictable, small changes that are not important, and to clean up the display of the page changes.
The main interface consists of a list of sites and associated status information, in a table format with configurable rows and columns. It also optionally displays the range of site names for each page of the list.
Each page of the site list is composed of some combination of the following row options:
Each page of the site list is composed of some combination of the following column options:
Optionally displayed at the bottom of each page of the site list is the page ranges table. This table contains a list of all the pages in the site list, along with the unique first part of the first and last site titles on each page. This allows you to quickly jump to the page containing some site you want to see.
Clicking on the "Configure session" link in the site list loads a page that allows you to modify some program settings. The settings are grouped into five categories, as described below.
This category has three settings in one section. The settings control the frame behavior of the main interface window.
This category has seven settings in two sections. The "Frame" section controls the behavior of the frame or window containing the page diffs, and the "Format" section controls how the diffs are displayed.
Diff Command | Filter |
---|---|
"diff " |
123456789<>- |
"diff --context " or "diff -c " |
*! +- |
"diff --context=0 " or "diff -C 0 " |
*!+- |
"diff --unified " or "diff -u " |
@ +- |
"diff --unified=0 " or "diff -U 0 " |
@+- |
This category has two settings in one section. The settings control which site list is in use.
This category has six settings in two sections. The "Options" section controls various options for displaying the site list. The "Page Elements" section allows you to change which rows and columns are used in the site list.
This category has four settings in two sections. The "Select List" section controls the dimensions of the line selection page of the site list editor. The "Fields" section controls the dimensions of the entry fields used when adding or modifying a site in the list. Use of the site list editor is covered in the Site list editor section.
The site list editor is used to maintain the list of pages being monitored. It consists of two pages: The select list page, and the editing page.
This page displays the contents of the URL list file. You can select any line in the file and perform one of the following operations. There is also a link to close this window.
After selecting either Insert line, Copy line or Edit line, you are brought to the edit page, where you can edit the details of the selected page. You can also get to the edit page by clicking on the link in the Edit column of the site list. Once on the edit page, there are four fields you can edit, and two buttons.
$page = preg_replace('/search/modifiers', stripcslashes('replace'), $page);
[Not yet written.]
This site and its contents are Copyright © 2003-2004
by Dave Walton (diggerdiff@digger.net).
All rights reserved.