Hi guys!
This is a demo script for searching for expiring aged PR domain. I've wrote this script todays morning and this works fine for me. This stuff contains just basic functionality and need to be improved to help a lot in PR domains research. If any of you interested in a full version of this script - please, let me know.
Here is the stuff:
Enjoy!
This is a demo script for searching for expiring aged PR domain. I've wrote this script todays morning and this works fine for me. This stuff contains just basic functionality and need to be improved to help a lot in PR domains research. If any of you interested in a full version of this script - please, let me know.
Here is the stuff:
PHP:
<?php
define('GMAG', 0xE6359A60);
function nooverflow($a)
{
while ($a < -2147483648) {
$a += 2147483648 + 2147483648;
}
while ($a > 2147483647) {
$a -= 2147483648 + 2147483648;
}
return $a;
}
function zeroFill($x, $bits)
{
if ($bits == 0) {
return $x;
}
if ($bits == 32) {
return 0;
}
$y = ($x & 0x7FFFFFFF) >> $bits;
if (0x80000000 & $x) {
$y |= (1 << (31 - $bits));
}
return $y;
}
function mix($a, $b, $c)
{
$a = (int) $a;
$b = (int) $b;
$c = (int) $c;
$a -= $b; $a -= $c; $a = nooverflow($a); $a ^= (zeroFill($c, 13));
$b -= $c; $b -= $a; $b = nooverflow($b); $b ^= ($a << 8);
$c -= $a; $c -= $b; $c = nooverflow($c); $c ^= (zeroFill($b, 13));
$a -= $b; $a -= $c; $a = nooverflow($a); $a ^= (zeroFill($c, 12));
$b -= $c; $b -= $a; $b = nooverflow($b); $b ^= ($a << 16);
$c -= $a; $c -= $b; $c = nooverflow($c); $c ^= (zeroFill($b, 5));
$a -= $b; $a -= $c; $a = nooverflow($a); $a ^= (zeroFill($c, 3));
$b -= $c; $b -= $a; $b = nooverflow($b); $b ^= ($a << 10);
$c -= $a; $c -= $b; $c = nooverflow($c); $c ^= (zeroFill($b, 15));
return array($a, $b, $c);
}
function GCH($url, $length = null, $init = GMAG)
{
if (is_null($length)) {
$length = sizeof($url);
}
$a = $b = 0x9E3779B9;
$c = $init;
$k = 0;
$len = $length;
while ($len >= 12) {
$a += ($url[$k + 0] + ($url[$k + 1] << 8) + ($url[$k + 2] << 16) + ($url[$k + 3] << 24));
$b += ($url[$k + 4] + ($url[$k + 5] << 8) + ($url[$k + 6] << 16) + ($url[$k + 7] << 24));
$c += ($url[$k + 8] + ($url[$k + 9] << 8) + ($url[$k + 10] << 16) + ($url[$k + 11] << 24));
$mix = mix($a, $b, $c);
$a = $mix[0]; $b = $mix[1]; $c = $mix[2];
$k += 12;
$len -= 12;
}
$c += $length;
switch ($len) {
case 11: $c += ($url[$k + 10] << 24);
case 10: $c += ($url[$k + 9] << 16);
case 9 : $c += ($url[$k + 8] << 8);
case 8 : $b += ($url[$k + 7] << 24);
case 7 : $b += ($url[$k + 6] << 16);
case 6 : $b += ($url[$k + 5] << 8);
case 5 : $b += ($url[$k + 4]);
case 4 : $a += ($url[$k + 3] << 24);
case 3 : $a += ($url[$k + 2] << 16);
case 2 : $a += ($url[$k + 1] << 8);
case 1 : $a += ($url[$k + 0]);
}
$mix = mix($a, $b, $c);
return $mix[2];
}
function strord($string)
{
$result = null;
for ($i = 0; $i < strlen($string); $i++) {
$result[$i] = ord($string{$i});
}
return $result;
}
function getPageRank($aUrl)
{
$url = 'info:'.$aUrl;
$ch = GCH(strord($url));
$url = 'info:'.urlencode($aUrl);
$pr_str = fetch("http://www.google.com/search?client=navclient-auto&ch=6$ch&ie=UTF-8&oe=UTF-8&features=Rank&q=$url");
return substr($pr_str, strrpos($pr_str, ':') + 1);
}
function fetch($url)
{
$response = false;
$curlHandler = curl_init($url);
curl_setopt($curlHandler, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curlHandler);
curl_close($curlHandler);
return $response;
}
set_time_limit(0);
if ($xml = simplexml_load_file('http://www.name.com/rss/expired_domains.xml.php', 'SimpleXMLElement', LIBXML_NOCDATA)) {
echo '<table border="1" cellpadding="2" cellspacing="0" align="center">'."\n";
echo '<tr>
<th>Domain</th>
<th>PR</th>
<th>Expired</th>
<th>Current price</th>
<th>Buy link</th>
</tr>'."\n";
foreach ($xml->xpath('/rss/channel/item') as $item) {
if (!empty($item->title)) {
$domain = $item->title;
$pr = trim(getPageRank($domain));
if (!empty($pr)) {
$expireGMTTime = strtotime($item->pubDate);
$nowGMTTime = gmdate('U', time());
$daysLeft = ($expireGMTTime - $nowGMTTime) / 86400;
$price = ((4 <= $daysLeft) ? 29.95 : ((3 <= $daysLeft) ? 24.95 : ((2 <= $daysLeft) ? 19.95 : 9.95)));
echo "<tr>
<td>$domain</td>
<td>$pr</td>
<td>{$item->pubDate}</td>
<td>\$$price</td>
<td><a href=\"{$item->link}\" target=\"_blank\">Buy now</a></td>
</tr>\n";
flush();
}
}
}
echo '</table>';
}