Introduction

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.

How Iron Web Analyzer Works

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.

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.