質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

3回答

3816閲覧

サイトを自動操作して指定時刻に高速に注文できるツールを作るための知識について

da11051

総合スコア13

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2018/10/28 01:00

編集2018/10/30 08:53

ダイアログかエクセルで注文時刻・銘柄コード・株数・注文期間を入力し、証券会社のHPを自動操作して指定時刻に高速に注文できるツールを作りたいと思います。
操作するホームページはテキスト・ボタン・画像・フォーム・プルダウンメニューなどの要素があります。
APIは用意されていません。
amazon・楽天などECサイトで、受付開始と同時に自動購入するbotを作るイメージです。

自動化の流れは、以下の順です。
ログイン→株式売買注文画面→銘柄コードを入力→注文画面に遷移→株数・注文期間を入力→注文確認・注文→注文照会→ログアウト
注文受付時間外の場合は途中で注文時間外です。と言ったメッセージが出てのエラーになるので、前の画面まで戻ってエラーが出ない時間になるまで繰り返して注文まで行いたいです。

できるだけミリ秒単位で高速化したいので、非ブラウザで行うのが望ましいです。できない場合はC++・C#・JavaScript・Pythonなどの言語を使ってブラウザを操作してでもよいです。(VBAはミリ秒単位の操作に向いていないとわかっています。)

プログラミングスキルは初心者ですが、CとJavaに関して学校で基本を習った程度の知識はあります。
HTMLの構造は多少読めて、いままではUWSCのRecIEを使いタグを要素を確かめながら行ってきましたが、動作が遅いです。

こういうwebの自動操作系の関連の書籍などがなかなか見つからず、参考サイトも少ないので何から勉強していいか困っています。どの書籍や参考サイトが参考になるのか、非ブラウザやブラウザを操作するにはどの言語を使い行えばいいか教えてください。

■補足として自身でやってみた事を追加します。
・C#でwebbrowserを使い作成
http://raku-bura.seesaa.net/category/25392622-1.htmlを参考に作成し、フォーム入力など一部動作が行えるものもあるが
<A class="cmd-action cmn-btn" onclick="return checkInput(document.main_fm)" href="JavaScript: document.main_fm.submit()">ログイン</A>
の部分でエラーで自動操作できなくなり断念

・JavaScriptを使い作成
HPを作成するための記事ばかりで関連の資料が少なく断念

・C++を使い作成
資料が少ない上難しすぎて断念

・Seleniumを使い作成
動作が記録できて作りやすいが、UWSCやVBAと変わらず動作が遅いので断念。
また、入力ダイアログの作り方やエラー処理の仕方の資料がない。

・pythonを使い作成
https://qiita.com/yosgspec/items/0892b2bf421f621d21c0を見る限り動作が遅いと思われる。

似たようなことを行っている参考事例について、以下のサイトがあります。
http://raku-bura.seesaa.net/
http://buy1click.blog.fc2.com/blog-entry-91.html

具体的に自動操作を行いたい証券会社webページのタグの一例を自動化の流れ

HTML

1 2・支店番号、口座番号、パスワードを入力しログインをクリックする。 3<TR> 4<TD class="cmn-table-data">支店番号</TD> 5<TD class="cmn-table-data"><INPUT name="shop" class="cmn-table-input" onfocus="this.select()" type="text" maxlength="3" pattern="[0-9]*" value=""> 6</TD></TR> 7<TR> 8<TD class="cmn-table-data">口座番号</TD> 9<TD 10class="cmn-table-data"><INPUT name="customer" class="cmn-table-input" onfocus="this.select()" type="text" maxlength="7" value=""> 11</TD></TR> 12<TR> 13<TD class="cmn-table-data">パスワード</TD> 14<TD class="cmn-table-data"><INPUT name="pass" class="cmn-table-input" onfocus="this.select()" type="password" maxlength="20" value=""> 15</TD></TR> 16 17<A class="cmd-action cmn-btn" onclick="return checkInput(document.main_fm)" 18href="JavaScript: document.main_fm.submit()">ログイン</A> 19<!-- Clear btn --> 20<A class="cmd-clear cmn-btn" href="JavaScript: document.main_fm.reset(); document.main_fm.shop.focus()"> 21クリア</A> 22 23 24・株式をクリックし株式売買注文をクリックする。 25<LI class="main-menu-item"><A class="main-menu-link" onclick="return true;" 26href="topmenu.do?menuNo=0&amp;category=00&amp;server_id=E67&amp;menuNo=0&amp;category=00" 27target="main_frm"><SPAN class="main-menu-word">トップ</SPAN> </A> </LI> 28<LI class="main-menu-item" style="position: static;"><A class="main-menu-link" 29href="javascript:void(0);"><SPAN class="main-menu-word">株式</SPAN> </A> 30 31<UL class="sub-menu" style="left: 533.83px; top: 214.73px; visibility: hidden;"> 32<LI class="sub-menu-item"><A class="sub-menu-link" onclick="return true;" href="topmenu.do?menuNo=0&amp;category=ST&amp;server_id=E67&amp;menuNo=0&amp;category=ST" 33target="main_frm"><SPAN class="sub-menu-word">株式売買注文</SPAN> </A></LI> 34<LI class="sub-menu-item"><A class="sub-menu-link" onclick="return true;" href="topmenu.do?menuNo=1&amp;category=ST&amp;server_id=E67&amp;menuNo=1&amp;category=ST" 35target="main_frm"><SPAN class="sub-menu-word">株式注文約定照会/取消/訂正</SPAN> </A></LI> 36</UL></LI> 37 38 39 40・売買区分買いボタンを押す 41<TD class="lbl-zenkaku td-2 p70"><INPUT name="opt_baibai" class="assist_baibai" 42id="uri" type="radio" value="1"> 43<LABEL for="uri"><SPAN class="bodyblue">売</SPAN></LABEL> 44 <INPUT name="opt_baibai" class="assist_baibai" id="kai" 45type="radio" checked="" value="3"> 46<LABEL for="kai"><SPAN class="bodyred">買</SPAN></LABEL> </TD> 47 48 49・注文数量入力 50<TD class="bgdark2 nobr td-1">注文数量</TD> 51<TD class="lbl-zenkaku td-2"> 52<UL> 53<LI><SPAN 54class="ui-spinner ui-widget ui-widget-content ui-corner-all"><INPUT name="txt_chu_suryo" class="ctl-size60 ui-spinner-input" id="assist_suryo" role="spinbutton" aria-valuemin="0" aria-valuemax="999999999" style="-ms-ime-mode: disabled;" onfocus="this.select()" type="text" maxlength="9" pattern="[0-9]*" value="" autocomplete="off"><A 55tabindex="-1" class="ui-spinner-button ui-spinner-up ui-corner-tr ui-button ui-widget ui-state-default ui-button-text-only" 56role="button" aria-disabled="false"><SPAN class="ui-button-text"><SPAN class="ui-icon ui-icon-plus">▲</SPAN></SPAN></A><A 57tabindex="-1" class="ui-spinner-button ui-spinner-down ui-corner-br ui-button ui-widget ui-state-default ui-button-text-only" 58role="button" aria-disabled="false"><SPAN class="ui-button-text"><SPAN class="ui-icon ui-icon-minus">▼</SPAN></SPAN></A></SPAN> 59<INPUT name="lbl_tani" id="lbl_tani" type="hidden" value="100">&nbsp;株</LI></UL></TD> 60 61 62 63・成行ボタンをクリック 64<INPUT name="sel_chu_jyoken" id="sel_chu_jyoken0" 65type="radio" value="1">&nbsp;<LABEL 66for="sel_chu_jyoken0">成行&nbsp;</LABEL> 67 68 69 70・期間指定ボタンを押し、期間指定をプルダウンメニュー指定 71・期間指定については事前に入力させ7とした場合、入力時が11/01(木)の場合入力時から7日後の11/08(木)と指定できるようにする。 72<TD class="bgdark2 nobr td-1 tr1 tr2">注文期限</TD> 73<TD class="bgdark2 nobr td-1 tr3 invisible">注文期限</TD> 74<TD class="lbl-zenkaku td-2"><INPUT name="lbl_shumatsu_ymd" id="lbl_shumatsu_ymd" type="hidden" value="20181102"> 75 <INPUT name="lbl_gyomu_ymd" id="lbl_gyomu_ymd" type="hidden" value="20181030"> 76 <INPUT name="lbl_shuchu_flg" id="lbl_shuchu_flg" type="hidden" value=""> 77 <SPAN class="st-nbr"><INPUT name="sel_chu_kigen" 78id="sel_chu_kigen1" type="radio" checked="" value="1">&nbsp;<LABEL for="sel_chu_kigen1">当日限り&nbsp;</LABEL></SPAN><BR><SPAN 79class="st-nbr"><INPUT name="sel_chu_kigen" id="sel_chu_kigen2" type="radio" 80value="0">&nbsp;<LABEL for="sel_chu_kigen2">期間指定&nbsp;</LABEL></SPAN> 81 82 <SELECT name="sel_chu_kigen_ymd" class="ctl-size40" id="sel_chu_kigen_ymd"><OPTION 83value="00000000">(選択)</OPTION><OPTION value="20181031">10/31(水)</OPTION><OPTION 84value="20181101">11/01(木)</OPTION><OPTION 85value="20181102">11/02(金)</OPTION><OPTION 86value="20181105">11/05(月)</OPTION><OPTION 87value="20181106">11/06(火)</OPTION><OPTION 88value="20181107">11/07(水)</OPTION><OPTION 89value="20181108">11/08(木)</OPTION><OPTION 90value="20181109">11/09(金)</OPTION><OPTION 91value="20181112">11/12(月)</OPTION><OPTION 92value="20181113">11/13(火)</OPTION><OPTION 93value="20181114">11/14(水)</OPTION><OPTION 94value="20181115">11/15(木)</OPTION><OPTION 95value="20181116">11/16(金)</OPTION><OPTION 96value="20181119">11/19(月)</OPTION><OPTION 97value="20181120">11/20(火)</OPTION></SELECT> 98 <INPUT name="cmd_shuchu" id="cmd_shuchu" type="button" value="週末まで"> 99</TD> 100 101 102・インサイダー規制にチェックを入れる。 103<TD class="bgdark2 nobr td-1 p30">インサイダー規制</TD> 104<TD class="lbl-zenkaku td-2"><INPUT name="chk_insider_chk_kbn" id="chk_insider_chk_kbn" 105type="checkbox" value="1"> 106<LABEL 107for="chk_insider_chk_kbn">この取引がインサイダー取引(内部者取引)に該当しないことを確約し、発注します。<BR>ご同意いただける方はチェックしてください。</LABEL> 108</TD> 109 110 111・注文確認をクリック 112<LI><A class="cmd-action" id="cmd_order_btn" onclick="doSetAction('EventProcedure2_onclick');doEventProcedure2_onclick(getField('cmd_order_btn')); return false;" 113href="estg131ent.do?server_id=E67&amp;accessCount=3&amp;actionId=EventProcedure2_onclick&amp;newwin=true">注文確認</A></LI> 114 115 116・パスワードを入力し発注するをクリック 117<DIV class="area-pass"> 118<UL> 119<LI>執行パスワード</LI> 120<LI><INPUT name="txt_exec_pwd" class="password ctl-size100" onfocus="this.select()" type="password" maxlength="20" value=""><BR> 121<DIV class="keyboard"><A id="cmd_epass_skbd" onclick="doSetAction('EventProcedure3_onclick');doEventProcedure3_onclick(getField('cmd_epass_skbd')); return false;" 122href="estg131ent.do?server_id=E67&amp;accessCount=4&amp;actionId=EventProcedure3_onclick&amp;newwin=true">※ソフトキーボードを使う。</A></DIV></LI></UL></DIV><!--/Password--> 123<!--Button--> 124<DIV class="area-botan"> 125<UL> 126<LI><A class="cmd-action" id="cmd_save_shinki" onclick="doSetAction('EventProcedure9_onclick');doEventProcedure9_onclick(getField('cmd_save_shinki')); return false;" 127href="estg131ent.do?server_id=E67&amp;accessCount=4&amp;actionId=EventProcedure9_onclick&amp;newwin=true">発注する</A></LI> 128<LI><A class="cmd-back2" id="cmd_return_confirm_shinki" onclick="doSetAction('EventProcedure13_onclick');doEventProcedure13_onclick(getField('cmd_return_confirm_shinki')); return false;" 129href="estg131ent.do?server_id=E67&amp;accessCount=4&amp;actionId=EventProcedure13_onclick&amp;newwin=true">戻る</A></LI></UL></DIV> 130 131 132・注文約定照会画面へをクリック 133<LI><A class="cmd-action" id="cmd_esmp004" onclick="doSetAction('EventProcedure14_onclick');doEventProcedure14_onclick(getField('cmd_esmp004')); return false;" 134href="estg131ent.do?server_id=E67&amp;accessCount=5&amp;actionId=EventProcedure14_onclick&amp;newwin=true">続けて注文する</A></LI> 135<LI><A class="cmd-action" id="cmd_chu_shokai_btn" onclick="doSetAction('EventProcedure15_onclick');doEventProcedure15_onclick(getField('cmd_chu_shokai_btn')); return false;" 136href="estg131ent.do?server_id=E67&amp;accessCount=5&amp;actionId=EventProcedure15_onclick&amp;newwin=true">注文約定照会画面へ</A></LI>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

SBI証券 スクレイピングで売買処理の基礎処理の作成の仕事

提案数 1件
20,000 円 ~ 30,000 円

発注すれば手を挙げる人はいるようです。
基本的な物を作ってもらい、それをカスタマイズすればいいのではないでしょうか。

違法になる可能性もありますので、まずは証券会社の規約を確かめるところから始めてください。

投稿2018/10/28 01:13

Zuishin

総合スコア28660

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

da11051

2018/10/29 11:26 編集

回答ありがとうございます。 同じような内容で、ランサーズに発注しましたが、ランサーズ側から規約違反の恐れがあると停止させられてしまいました。ランサーズにどこが悪いのか問い合わせているところです。 原因がわかったらもう一度発注してみようと思います。
Zuishin

2018/10/29 11:28

証券会社の規約を確認してください。 API を提供していないなら、そのデータを入手すること自体違法になりえます。
da11051

2018/10/29 12:36 編集

情報ありがとうございます。 APIを提供していないページで自動操作することはデータを入手することと同義であり違法である可能性があるという認識でしょうか? そういった話は全くの初耳で今までサイトを自動で操作して自分で使うだけでは法律には引っかからないと思い込んでいました。
Zuishin

2018/10/29 12:43

三回目になりますが、まずは確認してください。
da11051

2018/10/29 13:13

各証券会社の規約をざっと見てみましたが、データを入手することについて特に書かれていませんでした。証券会社の規約で見落としがあるかもしれませんのでもう少し調べてみます。 また、ランサーズの回答も待ってみます。
guest

0

ベストアンサー

「ミリ秒単位で高速化」とはミリ秒単位でアクセス及び操作して売買を繰り返すということでしょうか?
自動売買の仕組みがツール、もしくは API という形で証券会社が提供していれば、それにのっとってやる分には大丈夫だと思います。ですが、通常のブラウザを操作しての取引の場合、そのようなミリ秒単位の操作というのは本来想定されていない事と思います。
想定外の操作により、サービス側に負荷がかかったり、不具合を引き起こしてしまい、運営側から利用停止や最悪訴えられるリスクがあります。

実際、このような事件 もありますので、本来想定されていない使い方を許可を取らずにやるのは問題があるかと思います。
ランサーズで規約違反の恐れと言われた事もそのような理由と考えられます。

まずプログラムを作り始める前にやるべきことは、直接運営元にやってもいいのかどうか問い合わせてみることではないでしょうか?
運営元に聞いてOKなのであれば、自分で作るかランサーズで依頼すればいいと思います。

追記

動作速度について、確かにスクリプト系言語より C/C++ が早いのですが、今回の場合、ネットワークで通信したり、向こうのサーバー側がリクエストを処理する待ち時間が圧倒的にかかるので、ローカルでのプログラムの実行速度を早くしても、全体の処理速度の改善にはほとんどつながらないと思います。なので、どの言語を使っても変わらないのではないでしょうか。

投稿2018/10/30 14:37

編集2018/10/30 14:53
tiitoi

総合スコア21956

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

da11051

2018/10/30 15:01 編集

規約違反の原因と考えられる要因についての解説ありがとうございます。 今回のプログラムを作成するに当たりミリ秒の動作が必要なわけは、好材料や悪材料が出た銘柄に即時に反応するためで、材料が出た銘柄を1回限り売買することであり、ミリ秒単位で頻繁に売買を繰り返すアルゴリズム取引みたいなことを行うなどが目的ではないことを補足します。 また、材料が出るのはザラ場外が多いので、証券会社の受付時間になったらすぐ予約注文を出す用途として使う場合が多いことも補足します。 今後のランサーズなどに依頼する場合や問い合わせする場合の参考にいたします。
tiitoi

2018/10/30 15:04

補足についてわかりました。 今回の件について技術的な点を言うと、証券会社側から取引する手段としてWebページしか提供されていないのであれば、それを使うしかありません。 今現在も操作はある程度自動化されており、Python の selenium を試されてそれよりも早くしたいということですよね。 遅い原因はローカル側のプログラムなのでしょうか?そこは調べる必要があります。 ボトルネックがネットワークの通信や向こうのリクエスト処理待ちに時間がかかっている場合は、どの言語を使ってもこれ以上の改善は見込めないです。
da11051

2018/10/30 15:51 編集

やりたいことに対し、理解していただきありがとうございます。 操作する証券会社についてはAPIは無く基本的にWebページしか提供されていないと考えてください。 プログラミング初心者と言うこともあり、現在はIEの動作を記録できるUWSCのRecIEを使って、各入力するべき対応するフォームに対しタグ中のnameやvalueを対応させてIEで自動化しております。 銘柄コード・株数・注文期間を入力するダイアログを出して行ったり、注文受付時間外の場合は戻って処理を繰り返すなど調べて改良して行っております。 ただ、UWSCはIEしか対応できず、スクリプト言語なので遅いと言う記事もありますし、ブラウザを操作する時点で余計な操作に必要なもの以外も読み込んでしまっていて遅いと推測しています。 C#など高速動作する言語で、非ブラウザなどで余計なものを排除して通信できればと考えております。 しかし、上にも書いたとおりC#など高速動作する言語でwebを動かすのに必要な手がかり(参考サイトや書籍)が不足している状態です。
tiitoi

2018/10/30 15:51 編集

Webページしか提供されていないのであれば、Web ページ経由で取引するしかないので、非ブラウザという手段は基本的には考えられません。 > UWSCはIEしか対応できず IE に縛られないブラウザ自動化となると、やはり Selenium だと思います。 試された selenium はマクロで操作を登録して実行するタイプのものだったかもしれませんが、他に Python のモジュール版があり、プログラムを記述してブラウザを操作できます。 Web ページの自動テストに使われているので、情報量や実績もあります。 > 余計なものを排除して通信できれば 画像など読み込みに時間がかかる余計なものは Adblock などのアドオンをブラウザに入れて、全部ブロックしておけばよいのではないでしょうか?
tiitoi

2018/10/31 02:30

サイト先の C# も selenium と同じことをやってますね。 DOM を使ってボタン等の要素を特定して、クリックしたりしています。プログラミングで実現するのであれば、まずは DOM をしらべてみてはどうでしょうか。(Web の技術なので、Javascript の記事が多く出てきますが、特定の言語に紐付いた技術ではありません。)
da11051

2018/10/31 14:56 編集

解説ありがとうございます。 C#もSeleniumと同じことをやっているというのは、工夫次第でSeleniumでも同様の高速動作できると言うことでしょうか? ちなみに下記に説明している証券会社webページについて一連の処理をした場合UWSCで5ステップの処理に現状5秒はかかります。C#で楽天を操作している例https://youtu.be/ipXNDcGwiWQの動画の1:36の部分で買い物かごにいれてから注文完了の4ステップ程の処理をほぼ1秒以内に行えていることがわかります。 ただ、以下のようにSeleniumを使用して自動操作するのは、証券会社のサイトを自動操作させた場合の例で実行が遅いと言う記事を見たので、少し気になってしまいます。 seleniumで自動売買:http://www.stockdog.work/entry/2017/05/03/162134 過去にDOMについてはもしかしたら関係があるのではないかと調べたことがありますが、JavascriptでHP作成するような記事が多く自動操作とは結びつけられないと感じた記憶があります。 特定の言語に紐付いた技術ではないということで、もっと詳しく調べてみようと思います。
tiitoi

2018/10/31 14:58

Web サイト上の操作は、自分のパソコンだけで完結する処理ではなく、向こうのサーバーの応答速度等も関わってくるので、楽天のケースと比較してもあまり意味がありません。(閲覧するサイトによって、表示される速さが違うことからもわかるかと思います。) 速度を気にされるのであれば、例えば「アクセスして、なにか入力して、ボタンをクリックする」という簡単な動作をC#とselenium両方で試してみて、時間を測ったらいいと思いますよ。 実際、測らないと今回のケースにおいて言語によって差が出るのかわからりません。
da11051

2018/10/31 15:54

アドバイスありがとうございます。 1秒と5秒では大きく違うように見えても、サーバーの応答速度等の条件で大きく変わってしまうと言うことですね。初心者で勉強不足な面があり、前述の通りC#でwebbrowserを使った作成で特定の部分で止まってしまう問題も解決できておらず、現状のわかる範囲ではC#では表現が難しいです。 なので両方について試すのは時間がかかりそうです。 いろいろ調べて、疑問点があったらまた改めて質問いたしますのでよろしくお願いします。
guest

0

とりあえずスクレイピングでググってみては?
短時間に大量アクセスしすぎてアク禁食らわないよう注意してくださいね。

投稿2018/10/28 01:17

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

da11051

2018/10/29 11:20

回答ありがとうございます。 スクレイピングと言うキーワードは過去に調べたことがあるのですが、スクレイピングはwebから自動で情報を抽出する技術とありました。 スクレイピングではクローリングでデータを取得する目的で説明されている場合が多く、今回のテキスト・ボタン・画像・フォーム・プルダウンメニューなどの要素が含まれている、 証券会社のwebサイトから指定時刻に高速に自動で注文するという目的の内容についてはなかなか見つかりませんでした。
退会済みユーザー

退会済みユーザー

2018/10/29 11:51

スクレイピングでは(目的によりますが)、「対象のサイトをプログラム内で開き、ユーザー操作を模倣したり、そのHTML要素・操作して必要な情報を得る」といったことをします。なので目的に合致するかと思います。それらが対策可能で、対策されている、とかであれば難しいかもしれませんが。
da11051

2018/10/29 12:40

情報ありがとうございます。 自動操作もスクレイピングに含まれると言う認識でよろしいですね?勉強不足で今まで勘違いしていたようです。もう少しスクレイピングで調べてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問