API/CoinExchange.io/マーケット一覧情報取得・getmarkets(PowerShell)
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#navi(../)
* PowerShellでCoinExchange.ioのgetmarkets APIにアクセスし...
&htmlinsert(coinexchange.io.html);の''getmarkets'' APIをP...
* 追記 [#k7ec0bb3]
-2018/7/5~
''「サーバーによってプロトコル違反が発生しました. Section...
が出力されるようであれば、以下リンク記事を参考にしてくだ...
-[[Section=ResponseHeader Detail=CR の後には LF...の対処...
* 関連資料・記事 [#q480bc66]
-[[CoinExchange.io API v1 Reference>http://coinexchangeio...
-[[マーケット一覧情報取得・getmarkets(PowerShell)>API/Coi...
-[[マーケットサマリ情報取得・getmarketsummaries(PowerShel...
-[[指定した通貨ペアのマーケットサマリ情報を取得・getmarke...
-[[MarketID一覧情報を取得する>API/CoinExchange.io/MarketI...
-[[仮想通貨一覧を取得・getcurrencies>API/CoinExchange.io/...
-[[指定した通貨の通貨情報を取得する・getcurrency>API/Coin...
----
&htmlinsert(coinexchange.io.html);へのリンク
#htmlinsert(coinexchange.io.logo.html)
----
* getmarketsの仕様 [#m0f90f16]
以下、[[CoinExchange.io API v1 Reference>http://coinexcha...
Get Markets
This endpoint retrieves all markets.
HTTP Request
GET https://www.coinexchange.io/api/v1/getmarkets
‘getmarkets’ returns JSON structured like this:
{
"success": "1",
"request": "/api/v1/public/getmarkets",
"message": "",
"result": [
{
"MarketID": "1",
"MarketAssetName": "Megacoin",
"MarketAssetCode": "MEC",
"MarketAssetID": "3",
"MarketAssetType": "currency",
"BaseCurrency": "Bitcoin",
"BaseCurrencyCode": "BTC",
"BaseCurrencyID": "1",
"Active": true
},
{
"MarketID": "3",
"MarketAssetName": "Litecoin",
"MarketAssetCode": "LTC",
"MarketAssetID": "2",
"MarketAssetType": "currency",
"BaseCurrency": "Bitcoin",
"BaseCurrencyCode": "BTC",
"BaseCurrencyID": "1",
"Active": true
}
]
}
* getmarkets APIをブラウザでアクセスしてみる [#of505e25]
以下のURLにブラウザでアクセスしてみます。~
- https://www.coinexchange.io/api/v1/getmarkets
FirefoxだとJSON形式で確認することができます。~
|''JSON''|''生データ''|
|&ref(01.png);|&ref(02.png);|
* PowerShellのInvoke-RestMethodを使用してAPIを呼び出して...
実際に、&htmlinsert(coinexchange.io.html);の''getmarkets'...
+CoinExchange.ioのhttpsがTLS1.2のみなっているので、以下の...
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
+呼び出し元のURL情報を各変数に設定しています。
PS C:\> $base_url = "https://www.coinexchange.io/api/"
PS C:\> $version = "v1"
PS C:\> $method = "getmarkets"
+''getmarkets'' APIのURLをInvoke-RestMethodの引数にして実...
PS C:\> $response = Invoke-RestMethod -UseBasicParsing "...
+''getmarkets''から返却された値を表示しています。
PS C:\> $response
success request message result
------- ------- ------- ------
1 /api/v1/getmarkets {@{MarketID=18; Marke...
** 取得した値から各種値を抽出する [#a199c755]
上記で取得し、$responseに格納した値を操作してみます。
+取得したレスポンスは以下のようになっています。
PS C:\> $response
success request message result
------- ------- ------- ------
1 /api/v1/getmarkets {@{MarketID=18; Marke...
+ success, request, messageを取得し表示しています。
PS C:\> $response.success
1
PS C:\> $response.request
/api/v1/getmarkets
PS C:\> $response.message
+返却されたマッケート情報の数を表示しています。~
PS C:\> $response.result.count
823
+0番目と823番目を表示しています。
PS C:\> $response.result[0]
MarketID : 18
MarketAssetName : Litecoin
MarketAssetCode : LTC
MarketAssetID : 2
MarketAssetType : currency
BaseCurrency : Bitcoin
BaseCurrencyCode : BTC
BaseCurrencyID : 1
Active : True
#br
PS C:\> $response.result[822]
MarketID : 849
MarketAssetName : Sophos
MarketAssetCode : SOPH
MarketAssetID : 623
MarketAssetType : ethereum_asset
BaseCurrency : Ethereum
BaseCurrencyCode : ETH
BaseCurrencyID : 70
Active : False
+ MarketAssetNameのみ抽出し、ソート、ユニーク、先頭から10...
PS C:\> $response.result | % {$_.MarketAssetName} | Sort...
imbrex
Accelerator
AcesCoin
ACoin
Adcoin
Adshares
Adzcoin
AgriNovusCoin
AkuyaCoin
ALIS
* HTTPステータスなどを一緒に取得したい場合はInvoke-WebReq...
上記では、Invoke-RestMethodにてJSONをPowerShellで扱いやす...
Webサーバから返却された値を変換せずに取得したい場合は、In...
また、取得後にJSONをPowerShellで扱いやすいオブジェクトに...
以下に実行例を記します。
+CoinExchange.ioのhttpsがTLS1.2のみなっているので、以下の...
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
+ APIのURL作成用の文字列を変数に格納しています。
PS C:\> $base_url = "https://www.coinexchange.io/api/"
PS C:\> $version = "v1"
PS C:\> $method = "getmarkets"
+ Invoke-WebRequestコマンドレットでAPIを呼び出し返却され...
PS C:\> $response = Invoke-WebRequest -UseBasicParsing "...
+返却された情報を表示してみます。
PS C:\> $response
StatusCode : 200
StatusDescription : OK
Content : {"success":"1","request":"\/api\/v1\...
etName":"Litecoin","MarketAssetCode"...
rr...
RawContent : HTTP/1.1 200 OK
Transfer-Encoding: chunked
Connection: keep-alive
x-frame-options: SAMEORIGIN
Cache-Control: no-cache
Content-Type: application/json
Date: Wed, 30 May 2018 14:08:28 GMT
Set-Cook...
Forms :
Headers : {[Transfer-Encoding, chunked], [Conn...
rol, no-cache]...}
Images : {}
InputFields : {}
Links : {}
ParsedHtml :
RawContentLength : 174298
+ HTTPステータスやContent-Typeを簡単に取得することができ...
PS C:\> $response.StatusCode
200
PS C:\> $response.Headers.'Content-Type'
application/json
+取得したJSONをPowerShellで扱うためのオブジェクトに変換す...
PS C:\> $json = $response.Content | ConvertFrom-Json
PS C:\> $json
success request message result
------- ------- ------- ------
1 /api/v1/getmarkets {@{MarketID=18; Marke...
上記のInvoke-RestMethodと同じ状態となります。
** Webの応答を読み取っています。(Waiting for response)を...
上記のコマンドレットを実行すると、APIサーバとのやり取りの...
#ref(03.png)
これを非表示にしたい場合は、以下のようにしてください。
非表示にするには、$ProgressPreferenceにSilentlyContinueを...
変更前は以下のように Continue が設定されています。
PS C:\> $ProgressPreference
Continue
非表示にするには、以下のように変更します。
PS C:\> $ProgressPreference = "SilentlyContinue"
以上、PowerShellを使って、&htmlinsert(coinexchang.io.html...
----
&htmlinsert(coinexchange.io.html);
#htmlinsert(coinexchange.io.logo.html)
終了行:
#navi(../)
* PowerShellでCoinExchange.ioのgetmarkets APIにアクセスし...
&htmlinsert(coinexchange.io.html);の''getmarkets'' APIをP...
* 追記 [#k7ec0bb3]
-2018/7/5~
''「サーバーによってプロトコル違反が発生しました. Section...
が出力されるようであれば、以下リンク記事を参考にしてくだ...
-[[Section=ResponseHeader Detail=CR の後には LF...の対処...
* 関連資料・記事 [#q480bc66]
-[[CoinExchange.io API v1 Reference>http://coinexchangeio...
-[[マーケット一覧情報取得・getmarkets(PowerShell)>API/Coi...
-[[マーケットサマリ情報取得・getmarketsummaries(PowerShel...
-[[指定した通貨ペアのマーケットサマリ情報を取得・getmarke...
-[[MarketID一覧情報を取得する>API/CoinExchange.io/MarketI...
-[[仮想通貨一覧を取得・getcurrencies>API/CoinExchange.io/...
-[[指定した通貨の通貨情報を取得する・getcurrency>API/Coin...
----
&htmlinsert(coinexchange.io.html);へのリンク
#htmlinsert(coinexchange.io.logo.html)
----
* getmarketsの仕様 [#m0f90f16]
以下、[[CoinExchange.io API v1 Reference>http://coinexcha...
Get Markets
This endpoint retrieves all markets.
HTTP Request
GET https://www.coinexchange.io/api/v1/getmarkets
‘getmarkets’ returns JSON structured like this:
{
"success": "1",
"request": "/api/v1/public/getmarkets",
"message": "",
"result": [
{
"MarketID": "1",
"MarketAssetName": "Megacoin",
"MarketAssetCode": "MEC",
"MarketAssetID": "3",
"MarketAssetType": "currency",
"BaseCurrency": "Bitcoin",
"BaseCurrencyCode": "BTC",
"BaseCurrencyID": "1",
"Active": true
},
{
"MarketID": "3",
"MarketAssetName": "Litecoin",
"MarketAssetCode": "LTC",
"MarketAssetID": "2",
"MarketAssetType": "currency",
"BaseCurrency": "Bitcoin",
"BaseCurrencyCode": "BTC",
"BaseCurrencyID": "1",
"Active": true
}
]
}
* getmarkets APIをブラウザでアクセスしてみる [#of505e25]
以下のURLにブラウザでアクセスしてみます。~
- https://www.coinexchange.io/api/v1/getmarkets
FirefoxだとJSON形式で確認することができます。~
|''JSON''|''生データ''|
|&ref(01.png);|&ref(02.png);|
* PowerShellのInvoke-RestMethodを使用してAPIを呼び出して...
実際に、&htmlinsert(coinexchange.io.html);の''getmarkets'...
+CoinExchange.ioのhttpsがTLS1.2のみなっているので、以下の...
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
+呼び出し元のURL情報を各変数に設定しています。
PS C:\> $base_url = "https://www.coinexchange.io/api/"
PS C:\> $version = "v1"
PS C:\> $method = "getmarkets"
+''getmarkets'' APIのURLをInvoke-RestMethodの引数にして実...
PS C:\> $response = Invoke-RestMethod -UseBasicParsing "...
+''getmarkets''から返却された値を表示しています。
PS C:\> $response
success request message result
------- ------- ------- ------
1 /api/v1/getmarkets {@{MarketID=18; Marke...
** 取得した値から各種値を抽出する [#a199c755]
上記で取得し、$responseに格納した値を操作してみます。
+取得したレスポンスは以下のようになっています。
PS C:\> $response
success request message result
------- ------- ------- ------
1 /api/v1/getmarkets {@{MarketID=18; Marke...
+ success, request, messageを取得し表示しています。
PS C:\> $response.success
1
PS C:\> $response.request
/api/v1/getmarkets
PS C:\> $response.message
+返却されたマッケート情報の数を表示しています。~
PS C:\> $response.result.count
823
+0番目と823番目を表示しています。
PS C:\> $response.result[0]
MarketID : 18
MarketAssetName : Litecoin
MarketAssetCode : LTC
MarketAssetID : 2
MarketAssetType : currency
BaseCurrency : Bitcoin
BaseCurrencyCode : BTC
BaseCurrencyID : 1
Active : True
#br
PS C:\> $response.result[822]
MarketID : 849
MarketAssetName : Sophos
MarketAssetCode : SOPH
MarketAssetID : 623
MarketAssetType : ethereum_asset
BaseCurrency : Ethereum
BaseCurrencyCode : ETH
BaseCurrencyID : 70
Active : False
+ MarketAssetNameのみ抽出し、ソート、ユニーク、先頭から10...
PS C:\> $response.result | % {$_.MarketAssetName} | Sort...
imbrex
Accelerator
AcesCoin
ACoin
Adcoin
Adshares
Adzcoin
AgriNovusCoin
AkuyaCoin
ALIS
* HTTPステータスなどを一緒に取得したい場合はInvoke-WebReq...
上記では、Invoke-RestMethodにてJSONをPowerShellで扱いやす...
Webサーバから返却された値を変換せずに取得したい場合は、In...
また、取得後にJSONをPowerShellで扱いやすいオブジェクトに...
以下に実行例を記します。
+CoinExchange.ioのhttpsがTLS1.2のみなっているので、以下の...
PS C:\> [Net.ServicePointManager]::SecurityProtocol = [N...
+ APIのURL作成用の文字列を変数に格納しています。
PS C:\> $base_url = "https://www.coinexchange.io/api/"
PS C:\> $version = "v1"
PS C:\> $method = "getmarkets"
+ Invoke-WebRequestコマンドレットでAPIを呼び出し返却され...
PS C:\> $response = Invoke-WebRequest -UseBasicParsing "...
+返却された情報を表示してみます。
PS C:\> $response
StatusCode : 200
StatusDescription : OK
Content : {"success":"1","request":"\/api\/v1\...
etName":"Litecoin","MarketAssetCode"...
rr...
RawContent : HTTP/1.1 200 OK
Transfer-Encoding: chunked
Connection: keep-alive
x-frame-options: SAMEORIGIN
Cache-Control: no-cache
Content-Type: application/json
Date: Wed, 30 May 2018 14:08:28 GMT
Set-Cook...
Forms :
Headers : {[Transfer-Encoding, chunked], [Conn...
rol, no-cache]...}
Images : {}
InputFields : {}
Links : {}
ParsedHtml :
RawContentLength : 174298
+ HTTPステータスやContent-Typeを簡単に取得することができ...
PS C:\> $response.StatusCode
200
PS C:\> $response.Headers.'Content-Type'
application/json
+取得したJSONをPowerShellで扱うためのオブジェクトに変換す...
PS C:\> $json = $response.Content | ConvertFrom-Json
PS C:\> $json
success request message result
------- ------- ------- ------
1 /api/v1/getmarkets {@{MarketID=18; Marke...
上記のInvoke-RestMethodと同じ状態となります。
** Webの応答を読み取っています。(Waiting for response)を...
上記のコマンドレットを実行すると、APIサーバとのやり取りの...
#ref(03.png)
これを非表示にしたい場合は、以下のようにしてください。
非表示にするには、$ProgressPreferenceにSilentlyContinueを...
変更前は以下のように Continue が設定されています。
PS C:\> $ProgressPreference
Continue
非表示にするには、以下のように変更します。
PS C:\> $ProgressPreference = "SilentlyContinue"
以上、PowerShellを使って、&htmlinsert(coinexchang.io.html...
----
&htmlinsert(coinexchange.io.html);
#htmlinsert(coinexchange.io.logo.html)
ページ名: