【Mac向け】無料検索順位チェックツール「Serposcope」のインストール方法

よしみです。

Windowsで検索順位チェックツールといえば「GRC」です。Macでは利用できず「Serposcope」を利用されている方が非常に多いです。今回は「Serposcope」のインストール方法をご紹介します。

ダウンロード

SerposcopeはダウンロードしてPC単体で利用するクライアントアプリです。こちらからダウンロードすることができます。

SerposcopeSerposcopeは、Windows、Mac、Linuxで利用することができます。Macの場合は、「jar (Mac, other Linux…)をダウンロードしてください。「serposcope-X.X.X.jar」というファイルがダウンロードされます。

が、ここで問題がchromeではなぜか「Serposcope」がダウンロードできなかったです。ブラウザをSafariに変更したら、無事にダウンロードできました。

インストール

ダウンロードした「serposcope-X.X.X.jar」を起動してください。

がしかし、JDK 1.8以上が必要になります。

JDKとアラートが出ますので、ターミナルで確認してみましょう。

ターミナルでコマンドを叩きます。

java -ver

ターミナル
ターミナル上に「JDKをインストールしてください」とのメッセージが表示されますので、JDKをインストールしましょう。

No Java runtime present, requesting install.

JDKが必要になるので、oracleのサイトへアクセスし、Accept License Agreementにチェックしてダウンロードします。
Java SE Development Kit 8 – Downloads

JDKMac OSを選ぶのですが、223MBもあり、通信環境によっては結構時間がかかります。しばし、お待ちください。

jdk-XXXX-macosx-x64.dmgがダウンロードされたら、解凍してインストール開始です。

続ける」をクリックします。

jdk
インストール」をクリックします。

jdk
ソフトウェアをインストール」をクリックします。

jdk
閉じる」をクリックします。

jdk

SEOツールの「serposcope」をターミナルでインストールします。
ダウンロードフォルダに移動します。

$ cd Downloads

移動した先のフォルダにファイルがあるかlsコマンドでチェックします。

$ ls

フォルダ内にserposcope-X.X.X.jarの確認ができたらターミナルでインストールをします。

$ java -jar serposcope-X.X.X.jar

少し待つとインストールが開始されます、

starting serposcope service
[2017-04-06 11:38:01,804] [NinjaJetty] INFO  c.SerposcopeConf - serposcope.version          : 2.7.1
[2017-04-06 11:38:01,808] [NinjaJetty] INFO  c.SerposcopeConf - serposcope.datadir          : /Users/XXXXX/serposcope
[2017-04-06 11:38:01,808] [NinjaJetty] INFO  c.SerposcopeConf - serposcope.logdir           : /Users/XXXXX/serposcope/logs
[2017-04-06 11:38:01,808] [NinjaJetty] INFO  c.SerposcopeConf - serposcope.db.url           : jdbc:h2:/Users/XXXXX/serposcope/db;MODE=MySQL
[2017-04-06 11:38:01,808] [NinjaJetty] INFO  c.SerposcopeConf - serposcope.db.debug         : false
[2017-04-06 11:38:01,808] [NinjaJetty] INFO  c.SerposcopeConf - serposcope.listenAddress    : 0.0.0.0
[2017-04-06 11:38:01,808] [NinjaJetty] INFO  c.SerposcopeConf - serposcope.listenPort       : 7134
[2017-04-06 11:38:01,921] [NinjaJetty] WARN  o.e.j.s.h.ContextHandler - Empty contextPath
[2017-04-06 11:38:01,946] [NinjaJetty] INFO  s.l.MyNinjaJetty - Trying to start jetty vnull on 0.0.0.0:7134
[2017-04-06 11:38:02,317] [NinjaJetty] INFO  c.Module - now logging to /Users/XXXXX/serposcope/logs/2017-04-06.log
Can't establish connection to database
org.h2.jdbc.JdbcSQLException: データベースが使用中です: null. 可能な解決策: 他の接続を全て閉じる; サーバモードを使う
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-194]
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
	at org.h2.message.DbException.get(DbException.java:168)
	at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:188)
	at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:168)
	at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:100)
	at org.h2.engine.Database.getPageStore(Database.java:2474)
	at org.h2.engine.Database.open(Database.java:697)
	at org.h2.engine.Database.openDatabase(Database.java:276)
	at org.h2.engine.Database.<init>(Database.java:270)
	at org.h2.engine.Engine.openSession(Engine.java:64)
	at org.h2.engine.Engine.openSession(Engine.java:176)
	at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
	at org.h2.engine.Engine.createSession(Engine.java:137)
	at org.h2.engine.Engine.createSession(Engine.java:27)
	at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:354)
	at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:116)
	at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:100)
	at org.h2.Driver.connect(Driver.java:69)
	at java.sql.DriverManager.getConnection(DriverManager.java:664)
	at java.sql.DriverManager.getConnection(DriverManager.java:270)
	at com.serphacker.serposcope.di.db.DataSourceProvider.get(DataSourceProvider.java:40)
	at com.serphacker.serposcope.di.db.DataSourceProvider.get(DataSourceProvider.java:21)
	at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81)
	at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:53)
	at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:61)
	at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:45)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
	at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205)
	at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
	at com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199)
	at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180)
	at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
	at com.google.inject.Guice.createInjector(Guice.java:96)
	at ninja.Bootstrap.initInjector(Bootstrap.java:218)
	at ninja.Bootstrap.boot(Bootstrap.java:99)
	at ninja.servlet.NinjaServletListener.createNinjaBootstrap(NinjaServletListener.java:131)
	at ninja.servlet.NinjaServletListener.getInjector(NinjaServletListener.java:109)
	at com.google.inject.servlet.GuiceServletContextListener.contextInitialized(GuiceServletContextListener.java:47)
	at ninja.servlet.NinjaServletListener.contextInitialized(NinjaServletListener.java:61)
	at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:800)
	at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:444)
	at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:791)
	at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:294)
	at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:741)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132)
	at org.eclipse.jetty.server.Server.start(Server.java:387)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:114)
	at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61)
	at org.eclipse.jetty.server.Server.doStart(Server.java:354)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at ninja.standalone.NinjaJetty.doStart(NinjaJetty.java:161)
	at ninja.standalone.AbstractStandalone.start(AbstractStandalone.java:197)
	at ninja.standalone.AbstractStandalone.run(AbstractStandalone.java:94)
	at serposcope.lifecycle.Daemon.start(Daemon.java:19)
	at serposcope.lifecycle.Daemon.main(Daemon.java:15)
Caused by: java.lang.IllegalStateException: The file is locked: nio:/Users/XXXXX/serposcope/db.mv.db [1.4.194/7]
	at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:765)
	at org.h2.mvstore.FileStore.open(FileStore.java:173)
	at org.h2.mvstore.MVStore.<init>(MVStore.java:347)
	at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2930)
	at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:155)
	... 57 more

インストール完了です。

以下のURLにアクセスして、ユーザー作成画面が表示されれば成功です。

http://127.0.0.1:7134/create-admin

searcreate-admin

管理者アカウント作成

Eメールアドレスとパスワードを入力して「Create」をクリック。Confirm部分は、同じEメールとパスワードを入力します。

http://127.0.0.1:7134/login

Admin account createdと表示されればアカウント作成完了です。

Webを事業の成果につなげたいとお考えであれば、ぜひ一度ご相談ください!

ソフィーリサーチ&コンサルティングは、事業の成果を伸ばすため、実践的な戦略思考力と実行力で徹底的に成果を追求し、クライアントのパートナーとしてWebコンサルティングをさせていただきます。