Click here to Skip to main content
15,885,188 members
Articles / Desktop Programming / WPF

Iron Web Analyzer

Rate me:
Please Sign up or sign in to vote.
4.83/5 (9 votes)
26 May 2010CPOL5 min read 39.3K   3.4K   37   5
Analyze website content for Search Engine Optimization and technical problems (using Iron Python)

Introduction

Iron Web Analyzer Main Window

Iron Web Analyzer Main Window

Nowadays, all web site designers are concerned about the search engine optimization. It is very important for site owners to be the first item in search results or at least be in the first page. There are really lot of things to do. There are so many websites to validate your website, There are books full of tips for search engine optimization and also a lot of advice over internet websites and blogs.

If you are a professional web designer, you have huge information of Search Engine optimization tips and you must check these tips for every page of your website one by one. And if you are a beginner web developer, you don't have enough information about search engine optimization. So, checking a web site for Search Engine Optimization is not an easy job.

There are many tools and web sites trying to validate and analyze your web site content. But online validators like W3 School just lets you validate one page in each request. So you need to request validate for every pages of your website ! And also when did it just have to validate your page. You didn't analyze it for Search Engines, So you need to use other tools.

The main problem here is: Each tool (Website validator and analyzers) has special features that others do not have. So you need to use more than one tool. And these features are fixed and you can't add your own validation to them or create custom validation for your website.

Now, imagine a world (Like John Lennon) that you have an advice for search engine optimization. Instead of explaining your tips, you can write an analyzer with very simple and powerful programming language. So every beginner or professional developer can use your advice without the need to expend time to learn them.

This article is about an application to analyze web site content. Iron Web Analyzer is an open source application that employs Iron Python to analyze web sites. The main goal of this application is to analyze and validate websites contents for Search Engine Optimization (SEO), Technical problems, Design advices, Browser compatibility, etc.

Key Features

  • Automatically find URLs and follow them
  • Develop custom analyzers with Iron Python language
  • Custom filtering for download URLs
  • View HTTP properties of downloaded URL
  • Save project and continue download and analyze later
  • Define content type for analyzers to analyze specified HTTP content types
  • Can develop analyzer for any type of content type in HTTP
  • Can download HTTP and HTTPS

How Iron Web Analyzer Works

Iron Web Analyzer Working Diagram

Iron Web Analyzer Working Diagram

This is a working diagram of Iron Web Analyzer. As you can see in this diagram, the main application downloads the content of the web site and dispatches data between analyzers. Analyzers are Iron Python Application that can read downloaded data, Analyze them and then add messages (warning and error).

Analyzers can also add some URLs to download queue and application will download these URLs later.

Application accepts Iron Python code with some rules as Anlyzer. For more information about how to write your own analyzer, visit Develop Analyzer for Iron Web Analyzer.

Iron Web Analyzer Messages View

Iron Web Analyzer Messages View

Note: As analyzers are Iron Python application, they have access to your system. So you MUST NOT install analyzers from an unknown publisher because it may contain some kind of virus or spyware.

Why Iron Python?

Iron Python is a programming language from Python family developed by Microsoft. The main difference between Iron Python and native Python is that Iron Python is implemented with .NET CLR and is very easy to integrate with .NET applications.

Microsoft provides some libraries to run Iron Python inside your .NET applications. This is very easy to use. With few lines of code, you can run Iron Python inside your application. Define your variables and read the variables values changed by Iron Python code.

First, I tried to use native Python but it was very hard to read the result made by Python, so I tried Iron Python and had success.

Another reason to use Iron Python is that Iron Python (and also all script languages) do not need to compile. The code you write is the code computer runs. No need to compile. This made it easy to write custom analyzers.

Analyzers

Application provides an IDE named Analyzer Editor to develop analyzers. This application installs with setup and is also available with source code.

This application lets developer to write code. Test it with some sample URLs and see the messages analyzer produce.

There are many available analyzers - to see a list of available analyzers, visit Analyzers List and there is full comment and description for each analyzer.

All analyzers have a variable named content to communicate with application. Application puts the data into content and analyzers add messages to it.

For more information about how to develop your own analyzer, visit Develop Analyzer.

Help Wanted

There are many aspects of website validations that I don't have any information about. I will be very glad if you tell me the tips about search engine optimization, content validation and any other thing that if Iron Web Analyzer had was a better application.

And also if you have developed your own analyzer, please send it to me.

hamed.ji@gmail.com

For more information, please visit http://IronWebAnalyzer.SourceForge.net.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Web Developer
Iran (Islamic Republic of) Iran (Islamic Republic of)
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
GeneralMy vote of 5 Pin
Kanasz Robert1-Dec-11 2:50
professionalKanasz Robert1-Dec-11 2:50 
QuestionNice Pin
Anubhava Dimri1-Sep-11 0:46
Anubhava Dimri1-Sep-11 0:46 
Questionamir Pin
amir 212-Jul-11 22:07
amir 212-Jul-11 22:07 
Questionamir Pin
amir 212-Jul-11 22:05
amir 212-Jul-11 22:05 
GeneralIron Web Analyzer always crashes ... Pin
Martin081531-May-10 21:32
professionalMartin081531-May-10 21:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.