raksmart活动促销

分享

写回答

发帖

eNom和dynadot的域名抢注API

国外域名注册 国外域名注册 8864 人阅读 | 13 人回复

发表于 2010-7-6 19:24:41 | 显示全部楼层 |阅读模式

Enom:
原帖——http://www.namepros.com/expired-domains/385914-free-enom-drop-catcher-program.html

直接引用google翻译了:
我写了这个软件一段时间回来,被抓了很多域名由品酒师下降。 现在,我为namepros成员提供免费的,但这个免费版本,你将无法使用它来捕捉在追赶3个字符3或4个字符的域名(嘿,我不想再竞争对手。净额或LLLL.com下降,由品酒师  )。

顺便说一句,从这里下载

http://www.liandra.net/products/download/LEDDC.msi   (大小是370KB,这里附件要小于100KB就不上传了)

几个截图






顺便说一句,您将需要一个eNom注册经销商帐户,并需要添加您的IP地址来访问其API的第一次。

任何意见,以改善软件还赞赏

~~~~~~~~~~~~谁要是突破了他的3位4位域名的限制,也别闷着发大财,共享一下嘛,蛋糕那么大,一个人也吃不完,域名天天掉,就是抢不到~~~~~~~~~~~~~~

dynadot:
原帖——http://www.dynadot.com/resource/forums/f9-api/my-php-based-dynadot-api-765.html

因为作者说“So far I only have search, I'll work on register later.”就不转过来了,
他的帖子底下有人给出解决方案,
https://www.dynadot.com/account/forum/f9-api/dynadot-api-question-927.html

两个帖子结合看吧,俺不懂代码,自己研究吧,老米农应该一看就明白的。

~~~~~~~~~~~~~~~(以下为另一个dynadot抢注API)~~~~~~~~~~~~~~~~~~~~~~~~
说明

1.在注册了帐户1 Dynadot 并添加一些帐户学分。
2.前往 http://dnmedia.com/drop_catch.php 并复制/粘贴文本编辑器的代码到您的最爱。
3.编辑Dynadot用户名和密码在顶部(离开虽然引号)。
4.保存该文件在本地的“drop_catch.php”。
5.打开一个新的记事本文件,并在进入的领域要赶上,每行一个。
6.保存该文件在本地的“drops.txt”。
7.上传这两个文件在同一目录到您的服务器。

原文

Instructions

1.Sign up for an account at Dynadot and add some account credits.
2.Go to http://dnmedia.com/drop_catch.php and copy/paste the code into your favorite text editor.
3.Edit the Dynadot user name and password at the top (leave the quotes though).
4.Save the file locally as “drop_catch.php”.
5.Open up a new Notepad file, and enter in the domains you want to catch, one on each line.
6.Save the file locally as “drops.txt”.
7.Upload both files to your server in the same directory.

drop_catch.php
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<?php

/*
    Copyright 2009 Michael Sumner
    Email: msumner@dnmedia.com
    Web: http://www.DNMedia.com
     
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
     
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
     
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/  

session_start();

$user = "YOUR_DYNADOT_USERNAME_GOES_HERE";
$pass = "YOUR_DYNADOT_PASSWORD_GOES_HERE";
$file = "drops.txt";

// MODIFY BELOW THIS LINE AT YOUR OWN RISK //////////////////////////////////////////////////////

$result = FALSE;
$domains = explode("\n", str_replace(array("\r\n", "\r"), "\n", file_get_contents($file)));

$ch = curl_init();
set_opts($ch);
curl_setopt($ch, CURLOPT_HTTPGET, TRUE);
curl_setopt($ch, CURLOPT_URL, 'http://www.dynadot.com/?p6ZJ8oEy9V9U');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
set_opts($ch);

if(!isset($_SESSION['logged_in']))
{
    log_in($ch, $user, $pass);
}
     
while(count($domains) != 0)
{
    $domain = trim(array_shift($domains));
    $count++;
    if(!is_avail_safe($domain))
    {
        $domains[] = $domain;
    }
    else
    {
        $result = is_avail($ch, $domain);
            
        if($result != FALSE)
        {
            add_to_cart($ch, grab_input_name($domain, $result), grab_input_value($domain, $result));
            check_out($ch);
            echo "Attempted to register $domain.<br />";
        }
        else
        {
            echo "Failed to register $domain.<br />";
        }
    }
}

function set_opts(&$ch)
{
    $user_agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_COOKIEJAR, session_name() . '=' . session_id());
    curl_setopt($ch, CURLOPT_COOKIEFILE, session_name() . '=' . session_id());
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
}

function log_in($ch, $user, $pass)
{
    $url = 'https://www.dynadot.com/account/signin.html';
    $params = 'signin_username=' . $user . '&signin_password=' . $pass . '&signin=Sign%20In';     
    curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_exec($ch);
    $_SESSION['logged_in'] = 1;
}

function is_avail_safe($domain)
{     
    $pieces = explode(".", $domain);
    $ext = (count($pieces) > 2) ? $pieces[count($pieces) - 2] . "." . $pieces[count($pieces) - 1] : $pieces[1];
    $server = "$ext.whois-servers.net";
    $fp = fsockopen($server, 43, $errno, $errstr, 10);
    $result = "";
    if($fp === FALSE){ return FALSE; }
    fputs($fp, $domain . "\r\n");     
    while(!feof($fp)){ $result .= fgets($fp, 128); }
    fclose($fp);
     
    return ((stristr($result, 'no match for') !== FALSE) || (strtolower($result) == "not found\n")) ? true : false;
}

function is_avail($ch, $domain)
{
    $url = 'https://www.dynadot.com/account/search/search.html';
    $params = 'domain=' . $domain . '&search=Search';     
    curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
    curl_setopt($ch, CURLOPT_URL, $url);
    $result = curl_exec($ch);
         
    $result = strstr($result, '<td class="subjectTitle">Search Results</td>');
    $piece = strstr($result, $domain);
    $piece = strstr($piece, '<td valign="top">');
    $status = substr($piece, 17, strpos($piece, '</td>') - 17);

    return ($status == "Available") ? $result : FALSE;
}

function grab_input_name($domain, &$result)
{
    $result = substr($result, 0, strpos($result, $domain));
    $result = substr($result, strrpos($result, 'domain_'));
    return substr($result, 0, strpos($result, '"'));
}

function grab_input_value($domain, &$result)
{
    $result = substr($result, strrpos($result, 'value=') + 7);
    return substr($result, 0, strpos($result, '"'));
}

function add_to_cart($ch, $name, $value)
{
    $url = 'https://www.dynadot.com/account/search/search.html';
    $params = $name . '=' . $value . '&add_submit=Add%20and%20Checkout';
    curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_exec($ch);
}

function check_out($ch)
{
    $url = 'https://www.dynadot.com/order/submit.html';
    $params = 'submit=Submit%20my%20Order';
    curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_exec($ch);
}

?>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BTW:问下前辈们,3位的杂net值钱不?   比如1个数字两个字母的net域名,值钱不?两个字母中间一个连字符的com值钱不?

http://www.domainafterlife.com/2009/09/my-drop-cathing-software-beat-a-godaddy-backorder/

这是godaddy的抢注API,不过要钱了,其他的抢注在http://www.expron.com,95美元,不过对老米农来说也值得了。

[ 本帖最后由 yebi1985 于 2010-7-6 07:43 PM 编辑 ]

评分

参与人数 1威望 +5 金币 +10 银币 +10 收起 理由
ffnn + 5 + 10 + 10 精品文章

查看全部评分

回答|共 13 个

yebi1985

发表于 2010-7-6 19:39:23 | 显示全部楼层

域名天天掉,就是抢不到!

我正好用Dynadot,去试下最后一个API


BTW:问下前辈们,3位的杂net值钱不?   比如1个数字两个字母的net域名,值钱不?两个字母中间一个连字符的com值钱不?

值钱的话就去试一下

yebi1985

发表于 2010-7-7 10:21:06 | 显示全部楼层

这好的东西没人看看?信了你们的邪。

不要算了,来个人回答下我的问题啊,等着出动呢!

问下前辈们,3位的杂net值钱不?   比如1个数字两个字母的net域名,值钱不?两个字母中间一个连字符的com值钱不?

cqboy2003

发表于 2010-7-7 12:31:51 | 显示全部楼层

这个抢个域名一共要多少钱啊

cncaiker

发表于 2010-7-7 12:41:51 | 显示全部楼层

三杂的com还行。三杂net太多,不值钱,成本可能都收不回。

一般的,域名带了连接符,都会大打折扣

yebi1985

发表于 2010-7-7 17:46:48 | 显示全部楼层

原帖由 cqboy2003 于 2010-7-7 12:31 PM 发表
这个抢个域名一共要多少钱啊



给出来的3个API都不要钱,这不是backorder,而是你找准要掉的域名,然后自己设定让API自动提交,比手工概率要大很多倍,毕竟1秒和0.01秒还是有区别的

[ 本帖最后由 yebi1985 于 2010-7-7 05:54 PM 编辑 ]

goldstein

发表于 2010-7-8 10:13:39 | 显示全部楼层

不错,好东西。

直接借鉴代码。

cqboy2003

发表于 2010-7-8 11:07:32 | 显示全部楼层

厉害,高手真多。
有机会试试看,
是不是enom和dynadot里面必须要有钱才行啊?

shouji

发表于 2010-7-8 12:27:50 | 显示全部楼层

学术贴要顶

yebi1985

发表于 2010-7-8 18:11:12 | 显示全部楼层

原帖由 cqboy2003 于 2010-7-8 11:07 AM 发表
厉害,高手真多。
有机会试试看,
是不是enom和dynadot里面必须要有钱才行啊?



是的,账户里要有钱,今天整了一天,终于把dynadot的API安顿好了,

要找个支持Cron jobs的空间,你们用的收费空间一般都支持的吧,我没站要建只用免费的空间,找了好久。
您需要登录后才可以回帖 登录 | 注册

本版积分规则