Closed

Web Page Basis Viewer ( .NET C# )

This project received 26 bids from talented freelancers with an average bid price of $880 USD.

Get free quotes for a project like this
Employer working
Skills Required
Project Budget
$300 - $1000 USD
Total Bids
26
Project Description

Basis Viewer Project
--------------------

This is partially a "proof of concept" project. The motivation is to create the classes necessary to parse Web page xml dom documents, put the element information into a flat array structure, and to deliver the requested data to the calling application.

Platform/Language: .Net / C#

This will be a demo program I use for my customers.

The purpose of this application is to develop the classes that are needed to make it possible to parse the elements out of the web page xml dom document. The elements will be put into a flat array.
The array elements will be structures. The array will then be used to select out the elements, by type, that the user has selected.
The classes that are developed will be used in other applications. There are at least 4 application projects, that I would like done, and these will all need the classes created by the work on this application.

The Processes that need to be developed to allow going from a web page to the elements that the user wants to see.

Html Page --> XML dom doc --> Array Builder --> Array of Structures (flat structure.)
-------------

Array --> Basis Builder --> Selected Data User wants to see.
-------------

Basis Builder --> Basis Selector --> The data selected by the user.
--------------

The classes that need to be developed during this applications creation are:
1. Array Builder
2. Basis Builder
3. Basis Selector

The Basis Selector will be the interface into the 2 classes that parse the document and the Basis Builder.

The structures in the array should have the following fields"

Element index (this will be 1 more than a 0 based array index)
Table number if this element is inside the very first tag then it is = 1.
Table depth if this element is inside the 2nd tag, which is inside a
of the 1st table then the Table depth = 2.

there need to be other fields in this structure.

Elements I want included:

tags names and whether they are the start/end tags
(with a dom document, you will be inserting the end tags.)
attributes names and values
names element names
values element values
text element text values
links fully qualified url links inside the web page
scripts
applet code
email addresses


This application is a Web browser application.
----------------------------------------------
It must be written in (2003/2005) .NET, C# specifically.
This is a windows MDI application with 3 forms.

MDI Child Forms
Form#
1. "Web Browser" form
This is a standard web browser.
Top part of form
label - "URL:"
text box - the url the user will type in
button - Go
toolbar - Standard Web browser toolbar.
(below the above elements)
Browser pane - To display standard web pages.
When the user types a url and hits the return key, or clicks
the GO button, the web page will be displayed in the browser
pane.

2. "Standard Viewer" form.
This form's purpose is to show different element views of web page.
Top of form
label - "URL:"
text box - the url typed in
button - Go
toolbar - Standard Web browser toolbar.

(below the above elements)
Tabs
----
a. "Web Page"
b. "Page URLs"
c. "Text"
d. "Links"
e. "ARef Records"

Tab Details
-----------
a. "Web Page" Tab
- contains a web browser pane.
b. "Page URLs" Tab
- text box ( multiline text box)
This is a list of the files that were used
to compose the web page
c. "Text" Tab
- text box ( multiline text box)
1 text element per line
d. "Links" Tab
- text box ( multiline text box)
1 link element per line
e. "ARef Records" Tab
- text box ( multiline text box)
1 record per line (csv format)
( ie: text, image link name, URL of ref= attribute.)


When the user types a url and hits the return key, or clicks
the GO button, the web page is displayed in the browser pane on tab
page a.
The Array Builder parses the xml document, 1 element at a time. It
builds the array of structures.
The Basis Builder builds the text strings for tab page b, c, d and e.
The Basis Selector gets the data from the Basis Builder, and populates
the text boxes in tabs b, c, d and e.

3. "Custom Viewer" form
This form will show the custom views of a web page
Top of form
label - "URL:"
text box - the url typed in
button - Go
toolbar - Standard Web browser toolbar.
(below the above elements)
Tabs
----
a. "Translate Html Chars"
b. "Include"
c. "Ordering"
d. "View"
e. "Save"

Tab Details
-----------
a. "Translate Html Chars" Tab - (radio buttons)
choices:
1. Translate to ascii
2. Leave as HTML special formatted characters
Purpose: Select whether the user wants to translate
html characters into ascii characters.
b. "Include" Tab - (check boxes)
1. "Page URLs" - List of files that composed the web page
2. "Text" - Web page text elements
3. "Links" - Web links on web page
4. "ARef Records" - A Ref records from web page
Purpose: Select what to include in the Basis view.
c. "Ordering" Tab - (radio buttons)
choices:
1. "Natural Order" (types are mixed, in the order
they come out of the array.)
2. "By Type" (grouped by the element type, as
in b above,)
d. "View" Tab ( multiline text box)
text box
Purpose: To show the elements parsed out of the web page.
e. "Save" Tab
label - "Save to File:"
text box - to type in the file name
button - Browse to set up file name.
button - Save

A dictionary or map will need to be employeed to translate the html characters to
ascii characters.

The ability to select and use a proxy server with a login, using username and password.


"Application Menu"

"File"
"New"
"Browser"
"Standard Viewer"
"Custom Viewer"
"Proxy"
"Close"
"Exit"

"Window"
"Tile"
"Horizontally"
"Vertically"

Looking to make some money?

  • Set your budget and the timeframe
  • Outline your proposal
  • Get paid for your work

Hire Freelancers who also bid on this project

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online