パソコンを使って、ネットやアプリケーションの操作を自動化するプログラムを作りたいと考えています。
私はプログラムに関してはほとんど知識が無いので基本から勉強するのですが、上記のような自動操作をしたい場合はどのようなプログラム言語を勉強すれば宜しいでしょうか?
お勧めプログラム言語とあわせて、プログラムの勉強に役立つ書籍やサイトもご紹介いただけるとありがたいです。
ちなみに、学生時代にC言語を少し学びました。(情報処理は専門外なのでほんの少しですが・・・)
また、見よう見まねでVBを使った自動操作プログラムを組んだこともありますが、参考書を見ながら必要な部分を改造しただけなので基本は全然出来ていないと思います。
何卒宜しくお願いします。
A 回答 (8件)
- 最新から表示
- 回答順に表示
No.8
- 回答日時:
こんにちは。
私も同様のことに取り組んでいます。Windows 自動化ソフト UWSC のスクリプト機能を利用しています。質問に答える形式で UWSC の機能をご紹介します。
> 1.IEを操作して自動ログインしたりWEBサイト上のデータを自動取得する
可能です。
UWSC Pro にバンドルされている RecIE と呼ばれるツールを使って、ウェブブラウザ (IE) の操作を記録し、UWSC スクリプトエンジンで解釈実行できるスクリプトデータを自動作成してくれます。後は UWSC スクリプトエンジンからそのスクリプトを選択して起動を指示すれば OK です。
> 2.WEB上で自動取得したデータをローカルPCにCSVファイル等でエクスポートしたり、逆にローカルPCのデータを読み込んでWEB上の操作に反映させたりする。
可能です。
RecIE で取得したデータをスクリプトの操作の対象とすることも出来ます。UWSC はファイルアクセス機能を持っています。CSV ファイルの読み出し、書き込み機能を具備しています。
(参考URLについて)
UWSC のポータルです。UWSC Pro をインストールすると c:\Program Files\UWSC\sample フォルダに IE 関連の例題スクリプトが二つ格納されています。またサポート掲示板には、質問者と同様の問題領域に取り組んでいる沢山の方がいらっしゃいます。参考になさってください。
参考URL:http://www.uwsc.info/
No.7
- 回答日時:
WEBのプログラム言語と言えばphpです。
htmlが書けるのならなおさら。
htmlと併記できるので、ちょっとした自動化には一番適していると思います。
自動化といえば、クローラーなどですが、スクリプト言語で書いてcroneで定時実行するのが一般的ですね
私もphpなどで作ったクローラーでmysqlにデータ保存したりしていますが、
javascript単体でmysqlは操作できなかったと思います。
オススメの書籍は、phpの絵本です。
参考URL:http://top-10-algorithms.sl-jp.com/php/
No.6
- 回答日時:
>私のようなこれからプログラムを勉強しよう、という人はまだ好みも無いと思うのですが、皆さんどのようにして選択しているのでしょうか・・・。
好みが無い、って事は逆に良い事かもしれませんよ。
少なくとも僕が知ってる限り、
1.学校や職場で使ってるからその言語を覚えざるを得なかった。
2.自分の好きなソフトを作りたいんで、それに向いた使いやすい言語を自分で探す
と言う2つのタイプの人たちがいると思います。
1番目は「好き/好きじゃない」ってのはあんまり関係ありませんね。「使わなきゃならなかったんで」それを使ってるだけ、です。だからある種参考にはなり辛いんです。「業界スタンダード」なんて変わらないようで、実は永久不変のモノじゃあありません。(大昔は「何でもかんでもC」と言ってたし、その前では「何でもかんでも機械語/アセンブラ」とか言ってました)
むしろ耳を傾けなければならないのは2番目の人の意見です。こっちも「永久不変じゃない」のは間違い無いんですが、一方「それを利用すれば便利だ」と言う事を良く知ってるワケです。また、色々な言語の知識があるんで、こう言う人から情報を得た方が良いと思います。そう言う人たちを「ハッカー」と呼びます。(コンピュータ・ウィルスをまき散らすような人たちではなく、そのテの迷惑な人種は「クラッカー」と呼びましょう。)
C#に付いては良く分かりませんが、この人が言ってるんだったら間違いなく良い言語なんだろうな、とは思っています。
http://www.ogis-ri.co.jp/otc/hiroba/others/OORin …
これ読む限りC#は面白そうです。また、彼の発言の中にRubyやSchemeと言う言語の名前も出てきますね。そこから「アタリを付けて」そのテの言語に関して調べてみる、ってのも一興です。「好みが無い」のだったら何もVBとかJava、そしてJavaScriptにこだわる必要性もないでしょう。
>WEBやアプリ向け自動操作に適したプログラム言語
原則「適したプログラム言語」ってのは無いんですよ。例えば構文上の規則であるとか、機能面で「Web向けの言語だ」と言えるモノは特に存在しないと思います。
特に、Linux/FreeBSD系のOSだと「Web自体が自分の庭」みたいなモノなんで、Windowsのように「敷居を越えて」と言う感覚的なモノはないです。何故ならサーバー用途で使われているOSですし、基本、「Linux/FreeBSDで動く言語」だったら全てWeb向きです。そしてそう言う言語の数はLinux/FreeBSD上では無茶苦茶多い。逆に言うと、「Microsoft Windows限定環境」だから「何かの特別な」言語が必要に思えてくるんです。
つまり、言語間に差があるとすれば「言語自体の基本機能/能力」の問題じゃなくって、保有しているライブラリが「Web向けか否か?」って事なんですよね。違いは「自分で苦労してプログラムを書くか?」それとも「単にライブラリを呼びだせば済むのか?」なんです。前者は後者に比べるとメンド臭いんですよ(笑)。ただし、「出来ない」と言うワケではないのです。
ちょっとは安心したでしょうか(笑)?極論何でも良いんです(笑)。
>見よう見まねでVBを使った自動操作プログラムを組んだこともありますが、参考書を見ながら必要な部分を改造しただけなので基本は全然出来ていないと思います。
才能ありますね。
「見よう見まねで改造してプログラムを作る」
と言うのはオープンソース界のプログラマの基本技術のようですよ(笑)。
参考URL:http://cruel.org/freeware/hacker.html
No.5
- 回答日時:
>だからVB(.NET以降)がすすめられなくて
>C#はすすめられるってこと自体変。
だからこれは当方の主観だからと言っている。^^;
偏見ではあるが、VBは昔ながらの職人が多いので聞いても親切な人が少ない。
その点でC#はまだ若いので先を走る技術者が躍起になって解説したがる。
・・・気がする。
ドキュメントはどっちもどっちだしね。
これも好みの問題だろうけど。
アドバイス有難うございます。
> これも好みの問題だろうけど。
どのプログラム言語を学ぶかは最終的には好みの問題になるということですね。
私のようなこれからプログラムを勉強しよう、という人はまだ好みも無いと思うのですが、皆さんどのようにして選択しているのでしょうか・・・。
No.4
- 回答日時:
>当方の主観も多分に入っていますが、VBはお勧めしません。
>カルい処理(失礼)ならC#がお勧めです。
.NET以降のVBもC#も.NET Framework上で動くアプリで結果的には
同じこと。
だからVB(.NET以降)がすすめられなくて
C#はすすめられるってこと自体変。
VB(6)まででもサブクラス化とWin32APIをたたけば神業的なソフトが作れるんですけどね。
>OSに直結した操作をしたいならばCやアセンブラをとことん突き詰める必要があるでしょう。
アセンブラもCもいらない。いらない。
(カーネルモードのソフトを作るわけではないんだから)
今回の事だとサブクラス化、メッセージフック、キーボードフック、マウスフックあたりが肝になるかな。
アドバイス有難うございます。
結局はVBもCも使い方次第で何でも出来る、ということでしょうか。
ということは少し触ったことのあるVBやCを勉強したほうがいいということになるんでしょうか。
勉強不足で用語について分からない部分がありますので調べながら確認したいと思います。
No.3
- 回答日時:
>パソコンを使って、ネットやアプリケーションの操作を自動化するプログラムを作りたいと考えています。
もう少し具体的な理想を教えていただけるとアドバイスしやすいかもしれません。
クライアント側を操作し、ネット上の情報を自動取得するのであればC++やC#が良いです。
当方の主観も多分に入っていますが、VBはお勧めしません。
OSに直結した操作をしたいならばCやアセンブラをとことん突き詰める必要があるでしょう。
カルい処理(失礼)ならC#がお勧めです。
HPを持っていて、サーバ上で自動取得したいのであればPHPかPerlが良いです。
ここ2~3年で大きく躍進しているRubyも良いでしょう。
プログラマ人口が最も多いといわれるjavaでもJSPを用いればやりたいことは大抵出来ます。
この辺は好みとやる気ですね。当方はPHPerなのでPHPを薦めておきたいところです。
もっとも「自動取得」に至るまでの道程はいづれも厳しく険しいものだとは思いますが。
一朝一夕のもので出来るものではありません。
>JAVA Script
お約束ですが。
java,javascriptは全く以って別物です。
>MicroSoft
そんな会社は存在しません。
>有名で且みんなが持っているJAVA
それは絶対にありえません。
アドバイス有難うございます。
> もう少し具体的な理想を教えていただけるとアドバイスしやすいかもしれません。
私が目標としている自動操作とは、
1.IEを操作して自動ログインしたりWEBサイト上のデータを自動取得する
2.WEB上で自動取得したデータをローカルPCにCSVファイル等でエクスポートしたり、逆にローカルPCのデータを読み込んでWEB上の操作に反映させたりする。
というようなことです。
見よう見まねでVBを使った自動操作プログラムを組んだこともあると書きましたが、上記1.の部分はかなり粗雑なものですがVBである程度自動操作するところまでできました。
(ほとんどsend keyでキーボードを操作しただけなのでプログラムとすら呼べないと思います。)
ただ、WEB上のデータを取得したり、ローカルファイルを読み込んで自動操作に反映させたりというところまで出来ませんでした。
今回は腰を据えて基本からきちんと勉強しようと思いますので、少しかじった程度のVBやCにはこだわらずに目的に適したプログラム言語を勉強しようと考えています。
> HPを持っていて、サーバ上で自動取得したいのであればPHPかPerlが良いです。
私はレンタルサーバーを借りていて、簡単なサイトを持っています。
(MYSQLやHTMLの知識も素人に毛が生えた程度ですが・・・)
PHPやPerlを学ぶことで、将来的に自動操作プログラムをASPとして運用したり出来そうなので魅力的に感じました。
> プログラマ人口が最も多いといわれるjavaでもJSPを用いればやりたいことは大抵出来ます。
JSPについては先日、初めて知りました。
ほんのさわりについての紹介だけだったのですが、簡単にスクリプトが組める、ということを盛んに強調していたのが印象的でした。
今は正直、色んな情報がありすぎてどれを学ぶべきかすら決めかねています。
いずれにしろ一朝一夕に出来ることではないと思いますから、焦らずじっくり勉強していくつもりですが・・・。
No.2
- 回答日時:
>ネットやアプリケーションの操作を自動化するプログラムを作りたいと考えています。
それは例えば、Internet Explorer を自動で操作して、OKWave にログオンし関心カテゴリの質問一覧を取得するなどしたいということですか?
C 言語などのコードから外部アプリケーションを操作するのは結構難しいです。
AutoHotKey などを利用するのがてっとり早いかと思います。
(AutoHotKey で上記のアクションができるかは分かんないよ)
参考URL:http://lukewarm.s101.xrea.com/
アドバイス有難うございます。
私が目標としている自動操作とは、
1.ご指摘にあるようなIEを操作して自動ログインしたりWEBサイト上のデータを自動取得する
2.WEB上で自動取得したデータをローカルPCにCSVファイル等でエクスポートしたり、逆にローカルPCのデータを読み込んでWEB上の操作に反映させたりする。
というようなことです。
見よう見まねでVBを使った自動操作プログラムを組んだこともあると書きましたが、上記1.の部分はかなり粗雑なものですがVBである程度自動操作するところまでできました。
(ほとんどsend keyでキーボードを操作しただけなのでプログラムとすら呼べないと思います。)
ただ、WEB上のデータを取得したり、ローカルファイルを読み込んで自動操作に反映させたりというところまで出来ませんでした。
今回は腰を据えて基本からきちんと勉強しようと思いますので、少しかじった程度のVBやCにはこだわらずに目的に適したプログラム言語を勉強しようと考えています。
> AutoHotKey などを利用するのがてっとり早いかと思います。
参考サイト拝見いたしました。
イントロダクションや使用例をざっと見ましたが、おっしゃるとおり手っ取り早く作れそうな感じですね。
ただ、上記2.の部分が出来るかが良く分からなかったのでもう少し確認してみます。
No.1
- 回答日時:
ネット関係プログラムを覚えるのだったら
JAVA Script
VB Script
などです
ソフトによっては無料で手に入れれますので
MicroSoftのホームページにでも
いったらどうでしょうか??
VB と JAVA
ならば
僕は有名で且みんなが持っている
JAVAを推薦します
アドバイス有難うございます。
何となくjavascriptがいいのかな・・・と、私も感じていました。
(単にそういう名詞を良く聞くので)
ただ、昔VBをいじった時に、書店でjavascriptを使った自動操作が解説された書籍を探したのですが見つかりませんでした。
単に探し方が悪かっただけかもしれないですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- 仕事術・業務効率化 効率的な勉強方法(分野問わず)を教えてください 1 2023/08/16 01:33
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- その他(プログラミング・Web制作) ロボットの作り方を教えて下さい! なにも知らない素人です。 全て自作する場合、どうすればよいでしょう 6 2022/12/18 01:25
- インターネット広告・アフィリエイト アフェリエイトサイト 作成について 5 2022/05/13 21:31
- その他(プログラミング・Web制作) 次に、楽天のアジャイル就活に参加して、1日で内定を獲得できる。私は大企業に就職できる? 2 2022/04/17 13:38
- C言語・C++・C# c言語 コマンドライン引数 4 2023/02/09 18:47
- その他(プログラミング・Web制作) 大学一年でVBAのプログラミングを勉強しているものです。来週の情報の授業で以下の問題のプログラムを勉 4 2023/01/19 16:15
- IT・エンジニアリング IT業界に就職を考えているが適正がないかもしれない 5 2023/06/08 01:22
- その他(コンピューター・テクノロジー) Windows 11 Version 22H2 の (KB5023706)のアップデートに失敗する 2 2023/03/25 21:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
順列の内容をすべて表示するプ...
-
プログラミング言語の制作方法...
-
Int('1234') で、strをかんたん...
-
質問失礼します。 プログラム言...
-
楽しくて最高のプログラミング...
-
プログラムに書かれる"%"記号の...
-
Pythonって何を意識した言語な...
-
今さっき、2ちゃんねるがC言語...
-
lispとその他関数型言語について
-
TO_CHARで小数点以下がある場合...
-
最新のプログラム言語を学ぶに...
-
rpa化する言語としてら何があり...
-
VCとVC++
-
CとC++は別物なんですか?
-
Firefoxのソースは何言語?
-
VBSとWSHは読み方が違うだけで...
-
HTMLとC++で、どんなホームペー...
-
言語の選択、VB.NET or Python
-
VBSでDim、Private、Publicの違い
-
C言語って古いですか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語、C+、C++、C#の違い
-
楽しくて最高のプログラミング...
-
Pythonって何を意識した言語な...
-
C言語とhtmlの違いを どな...
-
プログラムに書かれる"%"記号の...
-
COBOLでのNOT = の AND条件
-
C++ ってなんて読む?
-
質問失礼します。 プログラム言...
-
プログラミング言語の制作方法...
-
UNITY Float型の接尾辞fって
-
C言語って古いですか?
-
Int('1234') で、strをかんたん...
-
COBOLで文字タイプを数字...
-
TO_CHARで小数点以下がある場合...
-
最新のプログラム言語を学ぶに...
-
C++における継続行
-
vbaとc言語の関連性について
-
VBScriptで引数を省略したい場合
-
VBSでDim、Private、Publicの違い
-
HTMLとC++で、どんなホームペー...
おすすめ情報