複数ScrapingBee アカウントをレプリケーション
CData Sync for API は、データベースにサンドボックスや製品インスタンスをレプリケートするなどの、レプリケーションの多様なシナリオに対する解決策を提供するスタンドアロンアプリケーションです。Sync for Windows およびSync for Java はどちらもコマンドラインインターフェース(CLI)を含んでおり、複数のScrapingBee 接続を簡単に管理できます。この記事では、CLI を使って複数のScrapingBee アカウントをレプリケートする方法について説明します。
ScrapingBee 接続の構成
接続およびE メール通知設定をXML 設定ファイルに保存できます。複数のScrapingBee アカウントをレプリケートするには、複数の設定ファイルを使います。以下にScrapingBee をSQLite にレプリケートする設定例を示します。
Windows
<?xml version="1.0" encoding="UTF-8" ?> <CDataSync> <DatabaseType>SQLite</DatabaseType> <DatabaseProvider>System.Data.SQLite</DatabaseProvider> <ConnectionString>Profile=C:\profiles\ScrapingBee.apip;AuthScheme=APIKey;ProfileSettings="APIKey=your_api_key";</ConnectionString> <ReplicateAll>False</ReplicateAll> <NotificationUserName></NotificationUserName> <DatabaseConnectionString>Data Source=C:\my.db</DatabaseConnectionString> <TaskSchedulerStartTime>09:51</TaskSchedulerStartTime> <TaskSchedulerInterval>Never</TaskSchedulerInterval> </CDataSync>
Java
<?xml version="1.0" encoding="UTF-8" ?> <CDataSync> <DatabaseType>SQLite</DatabaseType> <DatabaseProvider>org.sqlite.JDBC</DatabaseProvider> <ConnectionString>Profile=C:\profiles\ScrapingBee.apip;AuthScheme=APIKey;ProfileSettings="APIKey=your_api_key";</ConnectionString> <ReplicateAll>False</ReplicateAll> <NotificationUserName></NotificationUserName> <DatabaseConnectionString>Data Source=C:\my.db</DatabaseConnectionString> </CDataSync>
API キー認証の設定
ScrapingBee は API キー認証を使用します。API キーを取得するには、以下のステップで進めます:
- https://app.scrapingbee.com で ScrapingBee アカウントにサインインします
- Dashboard に移動して、上部のセクションで API キーを確認します。
- 接続文字列で使用する API キーをコピーします。
API キーを取得したら、以下の接続プロパティを設定します:
- AuthScheme:APIKey に設定します。
- APIKey:ScrapingBee の API キーに設定します。
接続文字列の例
Profile=C:\profiles\ScrapingBee.apip;AuthScheme=APIKey;ProfileSettings="APIKey=your_api_key";
ScrapingBee への接続
認証を設定すると、ScrapingBee に接続して、利用可能なテーブルからデータをクエリできます。すべてのテーブルでは、データを取得するために少なくとも 1 つの入力パラメータ(検索クエリや商品 ID など)が必要です。
各ScrapingBee インスタンスにクエリを設定
Sync を使うと標準SQL でレプリケーションを制御できます。REPLICATE ステートメントはハイレベルなコマンドで、データベースにテーブルをキャッシュして維持します。ScrapingBee API がサポートするあらゆるSELECT クエリを定義できます。下記のステートメントは、ScrapingBee のデータ のテーブルをキャッシュしてインクリメンタルに更新します。
REPLICATE GoogleSearchResults;
特定のデータベースを更新するために使用するレプリケーションクエリを含むファイルを指定することができます。レプリケーションステートメントはセミコロンで区切ります。次のオプションは、複数のScrapingBee アカウントを同じデータベースにレプリケートする場合に便利です。
REPLICATE SELECT ステートメントでは、異なるテーブルのプレフィックスを使用できます。
REPLICATE PROD_GoogleSearchResults SELECT * FROM GoogleSearchResults
異なるスキーマを使用することもできます。
REPLICATE PROD.GoogleSearchResults SELECT * FROM GoogleSearchResults
Sync の実行
接続文字列およびレプリケーションクエリの設定が完了したら、次のコマンドラインオプションを使ってSync を実行できます。
Windows
APISync.exe -g MyProductionAPIConfig.xml -f MyProductionAPISync.sql
Java
java -Xbootclasspath/p:c:\sqlitejdbc.jar -jar APISync.jar -g MyProductionAPIConfig.xml -f MyProductionAPISync.sql