ドメインとIPインテリジェンスのためにWho.isをスクレイピングする方法

Who.is をスクレイピングして、ドメイン所有権の詳細、登録日、連絡先情報を抽出する方法を学びます。貴重なB2Bリードやサイバーセキュリティインテリジェンスを取得しましょう。

Who.is favicon
who.is中程度
カバー率:Global
利用可能なデータ6 フィールド
タイトル場所出品者情報連絡先情報投稿日属性
すべての抽出可能フィールド
ドメイン名レジストラ名登録日有効期限更新日ドメインステータスネームサーバーIPアドレス登録組織登録市区町村登録都道府県登録国管理者メールアドレス技術担当者電話番号生のWHOISデータ
技術要件
JavaScript必須
ログイン不要
ページネーションなし
公式APIなし
ボット対策検出
CloudflareRate LimitingIP BlockingreCAPTCHA

ボット対策検出

Cloudflare
エンタープライズ級のWAFとボット管理。JavaScriptチャレンジ、CAPTCHA、行動分析を使用。ステルス設定でのブラウザ自動化が必要。
レート制限
時間あたりのIP/セッションごとのリクエストを制限。ローテーションプロキシ、リクエスト遅延、分散スクレイピングで回避可能。
IPブロック
既知のデータセンターIPとフラグ付きアドレスをブロック。効果的に回避するにはレジデンシャルまたはモバイルプロキシが必要。
Google reCAPTCHA
GoogleのCAPTCHAシステム。v2はユーザー操作が必要、v3はリスクスコアリングでサイレント動作。CAPTCHAサービスで解決可能。

Who.isについて

Who.isが提供するものと抽出可能な貴重なデータを発見してください。

包括的なドメイン検索サービス

Who.isは、ドメイン名やIPアドレスの公開登録情報を取得するためにWHOISやRDAPのルックアップを実行するための、主要なWebベースのツールです。世界中のドメインレジストラやレジストリによって維持されているレコードにアクセスするための中心的なハブとして機能し、登録日、有効期限、ネームサーバー設定に関する重要な洞察を提供します。このプラットフォームは、ITプロフェッショナルや研究者がネットワークインフラを調査し、インターネットリソースの背後にいる組織を特定するために広く利用されています。

豊富なデータリポジトリ

このウェブサイトには、ドメインに関連付けられた管理者、技術担当者、および登録者の連絡先に関する構造化および非構造化データが表示されます。現在、多くの個人連絡先データはGDPRやその他のプライバシープロトコルに準拠するために非表示(redacted)になっていますが、サイトは依然としてレジストラ名、ドメインステータス、各種DNSレコードなどの重要な情報を提供しています。また、IPアドレスの追跡やウェブサイトの稼働時間監視のためのツールも提供しており、Webインテリジェンスのための包括的なリソースとなっています。

WHOISスクレイピングのビジネス価値

Who.isのデータをスクレイピングすることは、サイバーセキュリティの研究者、競合インテリジェンスアナリスト、およびマーケティングの専門家にとって非常に価値があります。これにより、新しく登録されたビジネスの特定、ドメインポートフォリオの動きの追跡、および潜在的な脅威アクターによって使用されるインフラの調査が可能になります。このデータの抽出を自動化することで、組織は市場動向を先取りし、ブランド資産を保護し、高品質なB2Bリードを効率的に生成できます。

Who.isについて

なぜWho.isをスクレイピングするのか?

Who.isからのデータ抽出のビジネス価値とユースケースを発見してください。

新しく登録されたドメインの所有者を特定することによるB2Bリードジェネレーション

サイバーセキュリティの脅威インテリジェンスとドメインインフラのマッピング

取得機会のためのドメイン有効期限の監視

知的財産権の行使と商標侵害者の特定

特定セクターにおける市場調査とドメイン登録トレンドの追跡

スクレイピングの課題

Who.isのスクレイピング時に遭遇する可能性のある技術的課題。

強力なCloudflareボット保護とブラウザチャレンジ

IPアドレスごとに許可される検索数に対する厳格なレート制限

GDPRおよびWHOISプライバシーサービスによる広範なデータの非公開化

レンダリングを必要とする特定の検索結果の動的コンテンツ読み込み

非構造化された生のWHOISテキストブロックに対する複雑なパース要件

Who.isをAIでスクレイピング

コーディング不要。AI搭載の自動化で数分でデータを抽出。

仕組み

1

必要なものを記述

Who.isから抽出したいデータをAIに伝えてください。自然言語で入力するだけ — コードやセレクターは不要です。

2

AIがデータを抽出

人工知能がWho.isをナビゲートし、動的コンテンツを処理し、あなたが求めたものを正確に抽出します。

3

データを取得

CSV、JSONでエクスポートしたり、アプリやワークフローに直接送信できる、クリーンで構造化されたデータを受け取ります。

なぜスクレイピングにAIを使うのか

ノーコードインターフェースにより、スクリプトなしで数分でWho.isスクレイパーを構築可能
Cloudflareの課題やJavaScriptレンダリングの障害を自動的に処理
クラウド実行により、ローカルIPのブロッキングやレート制限の問題を完全に回避
ドメインステータスの変更を継続的に監視するための組み込みスケジューリング機能
リード管理のためにGoogleスプレッドシートやCRMへシームレスにデータエクスポートが可能
クレジットカード不要無料プランありセットアップ不要

AIを使えば、コードを書かずにWho.isを簡単にスクレイピングできます。人工知能搭載のプラットフォームが必要なデータを理解します — 自然言語で記述するだけで、AIが自動的に抽出します。

How to scrape with AI:
  1. 必要なものを記述: Who.isから抽出したいデータをAIに伝えてください。自然言語で入力するだけ — コードやセレクターは不要です。
  2. AIがデータを抽出: 人工知能がWho.isをナビゲートし、動的コンテンツを処理し、あなたが求めたものを正確に抽出します。
  3. データを取得: CSV、JSONでエクスポートしたり、アプリやワークフローに直接送信できる、クリーンで構造化されたデータを受け取ります。
Why use AI for scraping:
  • ノーコードインターフェースにより、スクリプトなしで数分でWho.isスクレイパーを構築可能
  • Cloudflareの課題やJavaScriptレンダリングの障害を自動的に処理
  • クラウド実行により、ローカルIPのブロッキングやレート制限の問題を完全に回避
  • ドメインステータスの変更を継続的に監視するための組み込みスケジューリング機能
  • リード管理のためにGoogleスプレッドシートやCRMへシームレスにデータエクスポートが可能

Who.is用ノーコードWebスクレイパー

AI搭載スクレイピングのポイント&クリック代替手段

Browse.ai、Octoparse、Axiom、ParseHubなどのノーコードツールは、コードを書かずにWho.isをスクレイピングするのに役立ちます。これらのツールは視覚的なインターフェースを使用してデータを選択しますが、複雑な動的コンテンツやアンチボット対策には苦戦する場合があります。

ノーコードツールでの一般的なワークフロー

1
ブラウザ拡張機能をインストールするかプラットフォームに登録する
2
ターゲットWebサイトに移動してツールを開く
3
ポイント&クリックで抽出するデータ要素を選択する
4
各データフィールドのCSSセレクタを設定する
5
複数ページをスクレイピングするためのページネーションルールを設定する
6
CAPTCHAに対処する(多くの場合手動解決が必要)
7
自動実行のスケジュールを設定する
8
データをCSV、JSONにエクスポートするかAPIで接続する

一般的な課題

学習曲線

セレクタと抽出ロジックの理解に時間がかかる

セレクタの破損

Webサイトの変更によりワークフロー全体が壊れる可能性がある

動的コンテンツの問題

JavaScript多用サイトは複雑な回避策が必要

CAPTCHAの制限

ほとんどのツールはCAPTCHAに手動介入が必要

IPブロック

過度なスクレイピングはIPのブロックにつながる可能性がある

Who.is用ノーコードWebスクレイパー

Browse.ai、Octoparse、Axiom、ParseHubなどのノーコードツールは、コードを書かずにWho.isをスクレイピングするのに役立ちます。これらのツールは視覚的なインターフェースを使用してデータを選択しますが、複雑な動的コンテンツやアンチボット対策には苦戦する場合があります。

ノーコードツールでの一般的なワークフロー
  1. ブラウザ拡張機能をインストールするかプラットフォームに登録する
  2. ターゲットWebサイトに移動してツールを開く
  3. ポイント&クリックで抽出するデータ要素を選択する
  4. 各データフィールドのCSSセレクタを設定する
  5. 複数ページをスクレイピングするためのページネーションルールを設定する
  6. CAPTCHAに対処する(多くの場合手動解決が必要)
  7. 自動実行のスケジュールを設定する
  8. データをCSV、JSONにエクスポートするかAPIで接続する
一般的な課題
  • 学習曲線: セレクタと抽出ロジックの理解に時間がかかる
  • セレクタの破損: Webサイトの変更によりワークフロー全体が壊れる可能性がある
  • 動的コンテンツの問題: JavaScript多用サイトは複雑な回避策が必要
  • CAPTCHAの制限: ほとんどのツールはCAPTCHAに手動介入が必要
  • IPブロック: 過度なスクレイピングはIPのブロックにつながる可能性がある

コード例

import requests
from bs4 import BeautifulSoup

# Who.isはCloudflareを使用しているため、高品質なヘッダーが不可欠です
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36',
    'Accept-Language': 'ja,en-US;q=0.9,en;q=0.8'
}
url = 'https://who.is/whois/example.com'

try:
    response = requests.get(url, headers=headers)
    response.raise_for_status()
    soup = BeautifulSoup(response.text, 'html.parser')
    
    # WHOISデータは通常 pre タグまたは特定の div クラス内にあります
    whois_block = soup.find('pre')
    if whois_block:
        print(f'WHOISデータ: {whois_block.get_text().strip()}')
    else:
        print('データブロックが見つからないか、アンチボットによってブロックされました。')
except requests.exceptions.RequestException as e:
    print(f'リクエスト失敗: {e}')

いつ使うか

JavaScriptが最小限の静的HTMLページに最適。ブログ、ニュースサイト、シンプルなEコマース製品ページに理想的。

メリット

  • 最速の実行(ブラウザオーバーヘッドなし)
  • 最小限のリソース消費
  • asyncioで簡単に並列化
  • APIと静的ページに最適

制限事項

  • JavaScriptを実行できない
  • SPAや動的コンテンツで失敗
  • 複雑なアンチボットシステムで苦戦する可能性

コードでWho.isをスクレイピングする方法

Python + Requests
import requests
from bs4 import BeautifulSoup

# Who.isはCloudflareを使用しているため、高品質なヘッダーが不可欠です
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36',
    'Accept-Language': 'ja,en-US;q=0.9,en;q=0.8'
}
url = 'https://who.is/whois/example.com'

try:
    response = requests.get(url, headers=headers)
    response.raise_for_status()
    soup = BeautifulSoup(response.text, 'html.parser')
    
    # WHOISデータは通常 pre タグまたは特定の div クラス内にあります
    whois_block = soup.find('pre')
    if whois_block:
        print(f'WHOISデータ: {whois_block.get_text().strip()}')
    else:
        print('データブロックが見つからないか、アンチボットによってブロックされました。')
except requests.exceptions.RequestException as e:
    print(f'リクエスト失敗: {e}')
Python + Playwright
from playwright.sync_api import sync_playwright

def scrape_whois(domain):
    with sync_playwright() as p:
        # 可能であればステルスプラグインと共にヘッドレスモードを使用すべきです
        browser = p.chromium.launch(headless=True)
        context = browser.new_context(user_agent='Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/110.0.0.0 Safari/537.36')
        page = context.new_page()
        
        # 検索ページへ移動
        page.goto(f'https://who.is/whois/{domain}')
        
        # 結果コンテナがレンダリングされるのを待機
        page.wait_for_selector('.query-results', timeout=10000)
        
        # 結果の内部テキストを抽出
        results = page.inner_text('.query-results')
        print(f'{domain} の結果:
{results}')
        
        browser.close()

scrape_whois('google.com')
Python + Scrapy
import scrapy

class WhoisSpider(scrapy.Spider):
    name = 'whois_spider'
    
    def start_requests(self):
        # 検索するドメイン
        domains = ['example.com', 'test.org']
        for domain in domains:
            yield scrapy.Request(
                url=f'https://who.is/whois/{domain}',
                callback=self.parse,
                meta={'proxy': 'http://your-residential-proxy:port'}
            )

    def parse(self, response):
        # ドメイン名と生のWHOISテキストを抽出
        yield {
            'domain': response.css('h1::text').get(),
            'raw_data': response.css('.query-results pre::text').get(),
            'registrar': response.xpath("//div[contains(text(), 'Registrar')]/following-sibling::div/text()").get()
        }
Node.js + Puppeteer
const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch({ headless: true });
  const page = await browser.newPage();
  
  // 現実的なユーザーエージェントを設定
  await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36');

  await page.goto('https://who.is/whois/example.com');

  // WHOISデータを含む主要な整形済みテキストブロックを待機
  try {
    await page.waitForSelector('pre', { timeout: 5000 });
    
    const whoisData = await page.evaluate(() => {
      const pre = document.querySelector('pre');
      return pre ? pre.innerText : 'データが見つかりません';
    });

    console.log(whoisData);
  } catch (err) {
    console.log('タイムアウトまたはブロッキングが検出されました:', err.message);
  }

  await browser.close();
})();

Who.isデータで何ができるか

Who.isデータからの実用的なアプリケーションとインサイトを探索してください。

B2Bセールスアウトリーチ

セールスチームは、新しく登録されたドメインの背後にいる意思決定者を特定し、Webデザインやホスティングなどのサービスを提案できます。

実装方法:

  1. 1新しいドメイン登録のデイリーリストを監視する。
  2. 2Who.isから登録者名と組織の詳細を抽出する。
  3. 3ドメイン名に含まれる業界関連のキーワードでリードをフィルタリングする。
  4. 4意欲の高い連絡先を自動メールマーケティングプラットフォームにインポートする。

Automatioを使用してWho.isからデータを抽出し、コードを書かずにこれらのアプリケーションを構築しましょう。

Who.isデータで何ができるか

  • B2Bセールスアウトリーチ

    セールスチームは、新しく登録されたドメインの背後にいる意思決定者を特定し、Webデザインやホスティングなどのサービスを提案できます。

    1. 新しいドメイン登録のデイリーリストを監視する。
    2. Who.isから登録者名と組織の詳細を抽出する。
    3. ドメイン名に含まれる業界関連のキーワードでリードをフィルタリングする。
    4. 意欲の高い連絡先を自動メールマーケティングプラットフォームにインポートする。
  • サイバーセキュリティの脅威マッピング

    セキュリティアナリストは、WHOISデータを使用して、悪意のあるアクターやフィッシングキャンペーンによって使用されるインフラをマッピングします。

    1. 既知の悪意のあるドメインをスクレイパーに入力する。
    2. 関連するネームサーバーと登録組織IDを抽出する。
    3. これらの同じインフラ識別子を共有している他のドメインを検索する。
    4. 特定されたネットワーク範囲を企業セキュリティのファイアウォールでブロックする。
  • ドメイン取得の監視

    投資家は、有効期限やステータスの変更を監視することで、購入したいドメインを追跡できます。

    1. 取得対象となる価値の高いドメインのリストを作成する。
    2. 「Expires(有効期限)」の日付と「Domain Status(ドメインステータス)」を確認するための定期的なスクレイピングをスケジュールする。
    3. ドメインが「Redemption Period(更新猶予期間)」に入った際に自動アラートを設定する。
    4. ドメインが市場に放出された直後に、プロフェッショナルなバックオーダー(予約注文)を行う。
  • ブランド保護分析

    企業は、顧客を保護するために、自社の商標を使用したタイポスクワッティングや詐欺サイトを監視できます。

    1. ブランド名のバリエーションや一般的なタイポ(打ち間違い)の自動検索を実行する。
    2. 疑わしい一致ドメインの登録者およびレジストラ情報を抽出する。
    3. ネームサーバーを分析して、不正サイトのホスティングプロバイダーを特定する。
    4. 特定されたレジストラおよびホスティング会社に対して、法的な削除要請を提出する。
プロンプト以上のもの

ワークフローを強化する AI自動化

AutomatioはAIエージェント、ウェブ自動化、スマート統合のパワーを組み合わせ、より短時間でより多くのことを達成するお手伝いをします。

AIエージェント
ウェブ自動化
スマートワークフロー

Who.isスクレイピングのプロのヒント

Who.isからデータを正常に抽出するための専門家のアドバイス。

CloudflareのIPベースのブロッキングやレート制限を回避するために、高品質な residential proxies をローテートしてください。

結果の動的レンダリングやJSの課題を処理するために、PlaywrightやPuppeteerなどのヘッドレスブラウザを使用してください。

自然なブラウジング動作を模倣するために、検索の間にランダムなスリープ間隔(ジッター)を導入してください。

使い勝手を向上させるために、正規表現(regex)を利用して生のテキストブロックを構造化された JSON データに変換してください。

特に「Expires」フィールドを監視し、価値の高いドメインが更新猶予期間(redemption phase)に入った際にアラートが飛ぶように設定してください。

WHOIS情報が非公開(redacted)の場合は、RDAPセクションを確認してください。より構造化された接続データが提供されている場合があります。

関連 Web Scraping

Who.isについてのよくある質問

Who.isに関するよくある質問への回答を見つけてください