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

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

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

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

解決済

4回答

5098閲覧

Rubyのソースコードをデスクトップアプリ化したい

katsuya_ds

総合スコア35

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

2クリップ

投稿2017/02/17 02:09

編集2017/02/17 02:43

###前提・実現したいこと
Rubyにてnokogiriを使用してスクレイピングするアプリを作ったとします。
それをターミナルやコマンドプロンプトからの操作ではなく、デスクトップアプリやネイティブアプリのように使用するためのハードルの低い技術はありませんでしょうか?
RubyTKなども試したのですが、古い技術のようで私の環境では使えませんでした。

アプリは取得したいデータを入力するためのファイルと結果を出力するファイルがあります。
ですので、exeファイルのようなものと出力ファイルと入力ファイルを格納する必要がある仕様となっています。

特定のサイトをスクレイピングをするツールの作成をお願いされたのですが、依頼者はターミナルを操作するのはハードルが高いというので、GUIで操作できるもので実装して欲しいとのことでした。

依頼者の環境へのrubyのインストールは私が説明するので可能です。
マルチプラットフォーム(Win、MacのみでOK)で使えるようにしたいと思っています。

どなたかご教授いただけませんでしょうか?
よろしくお願い致します。

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

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

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

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

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

IPU

2017/02/17 02:17

何を目的に、それをしたいかを書いた方が良いと思います。背景がわかった方が正しいアドバイスが行えると思いますので。
guest

回答4

0

exeファイル化するプログラム(コンパイラっぽいもの)はいくつかありますが、ネイティブ側のライブラリ(Windowsなりmacなりlinuxなりの)を呼ぶ方法がないのでGUIが作れないのではと思います。
ほかの言語でGUIだけ作って、裏でrubyのコマンドをコールするようなものを作るしかないかなと思います。

まぁ私なら素直にWebアプリにしますが…。

投稿2017/02/17 02:32

CodeLab

総合スコア1939

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

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

katsuya_ds

2017/02/17 02:36

rubyのインストールは依頼者に私が教えながら行えるのですが、それでは如何でしょうか?
CodeLab

2017/02/17 02:41

exeファイルにしたらrubyのインストールは不要でしょう。 ですが、rubyからGUIを作ることができないので、exeファイルになってもコンソールアプリになってしまうので、結局rubyのスクリプトを実行するのと大差なくなってしまうことが問題です。
guest

0

ベストアンサー

Ruby

1#encoding : utf-8 2require"dxruby" 3 4Window.width = 200 5Window.height = 100 6font = Font.new(32) 7word = "Ready" 8mouse_point = Sprite.new(0, 0, Image.new(1, 1)) 9background = Sprite.new(0, 0, Image.new(200, 100, C_RED)) 10Window.loop do 11 mouse_point.x = Input.mouse_pos_x 12 mouse_point.y = Input.mouse_pos_y 13 14 Sprite.draw(mouse_point) 15 Sprite.draw(background) 16 Window.draw_font(50, 30, word, font) 17 18 if mouse_point === background && Input.mousePush?(M_LBUTTON) 19 word = "Start" 20 #スクレイピングの処理 21 end 22end

DXRubyでボタンを作って中にスクレイピングの処理を入れるとか。
できたものをOcraでexe化すればそれっぽく見えるかも。

投稿2017/02/17 02:45

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

katsuya_ds

2017/02/17 02:48

DXRubyはまだ試してないです!参考にさせていただきます!
katsuya_ds

2017/02/17 02:57

ocraについては知っていましたがその前のGUI化のところでつまずいている感じでした!助かります!
退会済みユーザー

退会済みユーザー

2017/02/17 03:07 編集

Ocraでexe化できなくてもよいならGTKがあります。 Ruby-GNOME2 Project(https://ruby-gnome2.osdn.jp/ja/#Ruby-GNOME2+Project+Website) GTK2はGTK3よりも日本語の資料が整っています。GTK3はほぼ手さぐりになると思います。
guest

0

うーん。

目的

特定のサイトをスクレイピングをするツールの作成をお願いされたのですが、依頼者はターミナルを操作するのはハードルが高いというので、GUIで操作できるもので実装して欲しいとのことでした。

に対して、

Rubyにてnokogiriを使用してスクレイピングするアプリを作ったとします。

それをターミナルやコマンドプロンプトからの操作ではなく、デスクトップアプリやネイティブアプリのように使用するためのハードルの低い技術はありませんでしょうか?
RubyTKなども試したのですが、古い技術のようで私の環境では使えませんでした。

この内容だと、いまいち話がかみ合わない気がするのですが。。。

Chrome拡張「Scraper」でWEBページ情報を手軽にスクレイピングしてデータ化する方法

こういうのじゃ、ダメなんですか?

投稿2017/02/17 02:38

IPU

総合スコア283

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

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

katsuya_ds

2017/02/17 02:44

興味深いextensionですね!参考にさせていただきます!
guest

0

Windowsですよね?HTAアプリというのをご存じでしょうか?HTMLとVBScriptまたはJScript(Javascript)で作るアプリです。HTML+JavaScriptを作った処理が書ける人なら書けます。

使ったことは無いのですが、ActiveScriptRubyを使うと、VBScript/JScriptからRubyを呼べるようです。
https://www.google.co.jp/search?q=activescriptruby+HTA

あるいは、VBScript/JScriptからそのまま、"rubyw.exe スクリプト名" を実行できますので、そういう方が簡単かもしれません。データはファイル経由でやりとりする。
あるいは、VBAを使えば、メインはExcelということも出来るかと思います。

投稿2017/02/17 02:38

編集2017/02/17 02:42
otn

総合スコア84533

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

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

katsuya_ds

2017/02/17 02:46

試したことのない技術です!参考にさせていただきます!
otn

2017/02/17 03:22

「Ruby+GUI機能」よりは、日本語の参考情報が多いと思いますよ。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問