Notes on computer programming, server administration, using databases and ideas completely unrelated to Automation.

Archive for the ‘PHP Code & Scripts’ Category

Launched Free Online Google Keyword URL Ranking/Position Report Software

Sunday, March 27th, 2011

A free online Google keyword and URL ranking or position report software was launched today, at http://www.mikeskramstad.com/reports/free-online-google-keyword-ranking-software.php. It is based on Google’s JSON/Atom Custom Search API, not on screen scraping which would violate Google’s Terms of Service (TOS). The keyword ranking software generates a report for one website’s domain name and it is limited to 512 bytes worth of keyword phrases and 10 to 20 keyword phrases, depending on the length of the phrases. The time to generate a report is about 45 seconds, and the report can be downloaded in CSV format and optionally emailed to you or someone else.

Since it is freely available to the public, it is limited to 100 searches per day per Google’s TOS. I could have written the software to use screen scraping to by-pass this limit, however, I did not want to risk having the software blocked by Google.

Google keyword ranking report software

Google keyword ranking report software

As seen in the image above, the user interface is very simple. You enter your keywords in a comma-separated list, which you can keep in a saved Notepad file and copy and paste the keywords into the keywords field whenever you want a report. It will save you a lot of time and effort. No need to manually do the searches and read through all of the results to find your website. Below is a sample report.

Rankings Report for www.mikeskramstad.com

# POSITION KEYWORDS URL
0 9 software developer los angeles http://www.mikeskramstad.com/
1 3 software developer san francisco http://www.mikeskramstad.com/
2 5 computer programmer los angeles http://www.mikeskramstad.com/profile.php

Download report file results-03-28-11-0503AM.csv

Buy Google Keyword Ranking Software

Saturday, September 19th, 2009
Google Ranking Program

Google Ranking Program

Mike’s Google keyword ranking script is for sale. It is written in PHP and uses the MySQL data base to store keywords, countries and cities. Although the number of keywords  are unlimited and the number searches only limited by Google ,  it only runs the report for one domain name. This is intentional because Google does not want automated searches being done on their site.

The basic version finds the positions of web pages  on multiple keyword phrases in Google’s search engine. The user enters a  list of keywords and their priority levels.

The advanced version constructs keyword phrases with location names, either keyword phrase + city + country,  or keyword phrase + country or keyword phrase + city, and in reverse order.

Both versions have a random five to 15 second delay between searches. Despite the imposed delay, the ranking program and generate a report comprised of 2000 searches in a couple hours. The program can be run locally on any PC that can run PHP, which includes running Windows operating systems XP Professional, 2000, Windows 7, Linux and Ubuntu, and Mac OSX.

Using Google’s Ajax Search API with PHP and Perl

Thursday, September 3rd, 2009

Since I feel more proficient in Perl then other languages, I began writing a script in Perl to automatically run searches on Google’s web database.  See http://code.google.com/apis/ajaxsearch/. However, I quickly discovered that the required modules didn’t work.  The Perl v5.8.8 x86_64-linux-gnu-thread-multi version of the program would not run on my apache 2.2.8 web server on Ubuntu  8.04 Hardy Heron. The level of dependencies required by the Google search.pm module was too deep to be solved by using the lib statement and placing a few modules under the root of the web server. Other JSON modules on CPAN were useless because they had the same depencies. Although I could have eventually fixed the module issue on my local box, I wouldn’t be able to do it to the rented shared hosting server where mikeskramstad.com resides. Below are the Perl code snippets and the error they produced. (more…)



R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone 101clean - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - R. Ryan Avery Stone - Law Office of Marcus Gomez | Marcus Gomez Attorney | Marcus Gomez Attorney | Attorney Marcus Gomez | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Attorney | Marcus Gomez Law Offices | Marcus Gomez Law Offices | Marcus Gomez Law Offices | Marcus Gomez Law Offices | Marcus Gomez Law Offices | Marcus Gomez Law Offices | Marcus Gomez Law Offices | Law Office Marcus Gomez | Law Office Marcus Gomez | Law Office Marcus Gomez | Law Office Marcus Gomez | Law Office Marcus Gomez |