[爆卦]exe檔程式碼是什麼?優點缺點精華區懶人包

為什麼這篇exe檔程式碼鄉民發文收入到精華區:因為在exe檔程式碼這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者celestialgod (天)看板R_Language標題Re: [問題] 用Python呼叫...


※ 引述《Edster (Edster)》之銘言:
: - 問題:
: 能否用Python打包R, 最後做成單獨執行的exe?
: [問題類型]:
: 經驗諮詢(我想用R 連接某些資料庫,請問大家的經驗)
: 開發者(有撰寫R 的套件經驗)
: [問題敘述]:
: 我主要是用R,剛自學python沒多久。
: 最近有案主要我提供可執行的程式,(本來是幫他們算完就好, 但現在要程式)。
: 因為不想直接給原始程式碼,且他們同意做成exe.
: 想請問能否用Python做成執行檔, 但實際上裡面全部是在做R的運算?
: 因為有引用幾個重要的package是R寫的,所以也不能直接換成python來算。
: ps: 請問這樣我引用的package也要每次都呼叫嗎?
: 要是他們換電腦不就還要重新裝那隻package?

這問題我也被問過很多次XDDD

這裡先回答你的問題,基本上不行

從Python要編譯成exe,可行沒錯

但是問題R你要怎麼在Python中執行?

就算用rpy2,你也要有R binary,這條路我沒試過

但是看了一下stackoverflow有點困難

https://stackoverflow.com/questions/5850818/has-anyone-used-rpy2-with-py2exe


再來就是,你可以考慮的方式

把R檔案都加密,然後解密邏輯寫在Python裡面

用system命令呼叫捆好的R去執行解密後的script檔案



下面有幾種方式:

1. 開web API給對方,可以用OpenCPU這種solution把R code藏在web後面

2. 同推文,用Shiny

3. 我以前用過的做法是用C#的R.Net,然後把程式碼用C#加密

執行的時候解密R檔案,然後丟進去捆好的R binary裡面

附上github: https://github.com/ChingChuan-Chen/rnet_and_r_portable

(沒做加解密,只有直接用C# call R,R code可以編譯在C#裡面)


恩... 以上XD

最後有一個方法沒提到

把邏輯都寫成Rcpp編譯成DLL,然後都只給對方編譯好的Pkg

叫對方去用R執行XD

--

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 119.14.59.166 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1569511363.A.99C.html
cywhale: 推 沒想過Rcpp這招.. 如果用1 opencpu記得apache那也要藏 09/27 09:09
cywhale: 否則opencpu web api可以看code http://bit.ly/2nGQkA7 09/27 09:12

恩 對 要設定瀏覽權限,我想說如果要用,應該會自己去找,我就沒有提了XD
※ 編輯: celestialgod (119.14.59.166 臺灣), 09/27/2019 09:55:17

你可能也想看看

搜尋相關網站