• 締切済み

これからプログラムについて学ぼうと思っています。WEBやアプリ向け自動操作に適したプログラム言語を教えてください。

パソコンを使って、ネットやアプリケーションの操作を自動化するプログラムを作りたいと考えています。 私はプログラムに関してはほとんど知識が無いので基本から勉強するのですが、上記のような自動操作をしたい場合はどのようなプログラム言語を勉強すれば宜しいでしょうか? お勧めプログラム言語とあわせて、プログラムの勉強に役立つ書籍やサイトもご紹介いただけるとありがたいです。 ちなみに、学生時代にC言語を少し学びました。(情報処理は専門外なのでほんの少しですが・・・) また、見よう見まねでVBを使った自動操作プログラムを組んだこともありますが、参考書を見ながら必要な部分を改造しただけなので基本は全然出来ていないと思います。 何卒宜しくお願いします。

みんなの回答

  • iriyak
  • ベストアンサー率48% (40/82)
回答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/OORing/interview20.html これ読む限り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
  • wp_
  • ベストアンサー率54% (132/242)
回答No.5

>だからVB(.NET以降)がすすめられなくて >C#はすすめられるってこと自体変。 だからこれは当方の主観だからと言っている。^^; 偏見ではあるが、VBは昔ながらの職人が多いので聞いても親切な人が少ない。 その点でC#はまだ若いので先を走る技術者が躍起になって解説したがる。 ・・・気がする。 ドキュメントはどっちもどっちだしね。 これも好みの問題だろうけど。

worldmkt
質問者

お礼

アドバイス有難うございます。 > これも好みの問題だろうけど。 どのプログラム言語を学ぶかは最終的には好みの問題になるということですね。 私のようなこれからプログラムを勉強しよう、という人はまだ好みも無いと思うのですが、皆さんどのようにして選択しているのでしょうか・・・。

  • uki629
  • ベストアンサー率23% (40/172)
回答No.4

>当方の主観も多分に入っていますが、VBはお勧めしません。 >カルい処理(失礼)ならC#がお勧めです。 .NET以降のVBもC#も.NET Framework上で動くアプリで結果的には 同じこと。 だからVB(.NET以降)がすすめられなくて C#はすすめられるってこと自体変。 VB(6)まででもサブクラス化とWin32APIをたたけば神業的なソフトが作れるんですけどね。 >OSに直結した操作をしたいならばCやアセンブラをとことん突き詰める必要があるでしょう。 アセンブラもCもいらない。いらない。 (カーネルモードのソフトを作るわけではないんだから) 今回の事だとサブクラス化、メッセージフック、キーボードフック、マウスフックあたりが肝になるかな。

worldmkt
質問者

お礼

アドバイス有難うございます。 結局はVBもCも使い方次第で何でも出来る、ということでしょうか。 ということは少し触ったことのあるVBやCを勉強したほうがいいということになるんでしょうか。 勉強不足で用語について分からない部分がありますので調べながら確認したいと思います。

  • wp_
  • ベストアンサー率54% (132/242)
回答No.3

>パソコンを使って、ネットやアプリケーションの操作を自動化するプログラムを作りたいと考えています。 もう少し具体的な理想を教えていただけるとアドバイスしやすいかもしれません。 クライアント側を操作し、ネット上の情報を自動取得するのであればC++やC#が良いです。 当方の主観も多分に入っていますが、VBはお勧めしません。 OSに直結した操作をしたいならばCやアセンブラをとことん突き詰める必要があるでしょう。 カルい処理(失礼)ならC#がお勧めです。 HPを持っていて、サーバ上で自動取得したいのであればPHPかPerlが良いです。 ここ2~3年で大きく躍進しているRubyも良いでしょう。 プログラマ人口が最も多いといわれるjavaでもJSPを用いればやりたいことは大抵出来ます。 この辺は好みとやる気ですね。当方はPHPerなのでPHPを薦めておきたいところです。 もっとも「自動取得」に至るまでの道程はいづれも厳しく険しいものだとは思いますが。 一朝一夕のもので出来るものではありません。 >JAVA Script お約束ですが。 java,javascriptは全く以って別物です。 >MicroSoft そんな会社は存在しません。 >有名で且みんなが持っているJAVA それは絶対にありえません。

worldmkt
質問者

お礼

アドバイス有難うございます。 > もう少し具体的な理想を教えていただけるとアドバイスしやすいかもしれません。 私が目標としている自動操作とは、 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については先日、初めて知りました。 ほんのさわりについての紹介だけだったのですが、簡単にスクリプトが組める、ということを盛んに強調していたのが印象的でした。 今は正直、色んな情報がありすぎてどれを学ぶべきかすら決めかねています。 いずれにしろ一朝一夕に出来ることではないと思いますから、焦らずじっくり勉強していくつもりですが・・・。

  • koko_u_
  • ベストアンサー率18% (459/2509)
回答No.2

>ネットやアプリケーションの操作を自動化するプログラムを作りたいと考えています。 それは例えば、Internet Explorer を自動で操作して、OKWave にログオンし関心カテゴリの質問一覧を取得するなどしたいということですか? C 言語などのコードから外部アプリケーションを操作するのは結構難しいです。 AutoHotKey などを利用するのがてっとり早いかと思います。 (AutoHotKey で上記のアクションができるかは分かんないよ)

参考URL:
http://lukewarm.s101.xrea.com/
worldmkt
質問者

お礼

アドバイス有難うございます。 私が目標としている自動操作とは、 1.ご指摘にあるようなIEを操作して自動ログインしたりWEBサイト上のデータを自動取得する 2.WEB上で自動取得したデータをローカルPCにCSVファイル等でエクスポートしたり、逆にローカルPCのデータを読み込んでWEB上の操作に反映させたりする。 というようなことです。 見よう見まねでVBを使った自動操作プログラムを組んだこともあると書きましたが、上記1.の部分はかなり粗雑なものですがVBである程度自動操作するところまでできました。 (ほとんどsend keyでキーボードを操作しただけなのでプログラムとすら呼べないと思います。) ただ、WEB上のデータを取得したり、ローカルファイルを読み込んで自動操作に反映させたりというところまで出来ませんでした。 今回は腰を据えて基本からきちんと勉強しようと思いますので、少しかじった程度のVBやCにはこだわらずに目的に適したプログラム言語を勉強しようと考えています。 > AutoHotKey などを利用するのがてっとり早いかと思います。 参考サイト拝見いたしました。 イントロダクションや使用例をざっと見ましたが、おっしゃるとおり手っ取り早く作れそうな感じですね。 ただ、上記2.の部分が出来るかが良く分からなかったのでもう少し確認してみます。

  • aduken
  • ベストアンサー率69% (25/36)
回答No.1

ネット関係プログラムを覚えるのだったら JAVA Script VB Script などです ソフトによっては無料で手に入れれますので MicroSoftのホームページにでも いったらどうでしょうか?? VB と JAVA ならば 僕は有名で且みんなが持っている JAVAを推薦します

worldmkt
質問者

お礼

アドバイス有難うございます。 何となくjavascriptがいいのかな・・・と、私も感じていました。 (単にそういう名詞を良く聞くので) ただ、昔VBをいじった時に、書店でjavascriptを使った自動操作が解説された書籍を探したのですが見つかりませんでした。 単に探し方が悪かっただけかもしれないですね。

関連するQ&A

専門家に質問してみよう