最近想要寫個APP,自己要用的
想要取
95無鉛的價格http://new.cpc.com.tw/Home/
台幣對美元、台幣對人民幣的匯率http://rate.bot.com.tw/Pages/Static/UIP003.zh-TW.htm
我希望可以作到每日自動變動
請問有沒有相關程式碼可用的呢
謝謝
PS.我只要我要的部分,因為是我自己要用的,如:92無鉛我從不用,就不用抓這種資料
參考Sam的答案補充一下,以你的需求,要省錢的話,其實可以做到幾乎不需要去租用伺服器。
不過你至少要有一台電腦,可以連上網際網路,而且隨時開機。
方法:
把爬蟲跟產出結果的程式,在你的電腦上開發好,透過scheduler每天定時執行。然後把結果輸出後,透過Amazon API上傳到Amazon S3。要使用資料,就直接去S3拿。(透過https)
S3只跟你算頻寬費用,每個月可能還不到$1 USD。
自己先用php、asp、jsp或是node.js這些後端程式去抓取資料。
把資料分析後存入資料庫。
再讓android去取資料庫的這些資料。
不太建議把分析什麼的資料寫在android再來處理。
重點是你有了這樣的資料。
不管你是要web、android、ios or more……
就能夠很單純的讀取資料。
結論:你還是得要有一個伺服器。
可以用 iMacros 做網頁自動化,
俺做網路爬蟲有時候會搭配它使用,
蠻不錯的,
個人的話不需要架設伺服器也可以~
他是像以前的按鍵精靈一樣,
開啟網頁->錄製巨集->定時執行~
教學可以 Google 一下,網路上很多~
它有收費版跟免費版的,基本上免費版就很夠用了。
iMacros
我研究一下
謝謝
XD 之前沒看清楚,如果要開發 Android App 可以取得網頁資料,可參考以下網址。
http://stackoverflow.com/questions/13682742/how-to-send-curl-in-android-to-rest-service
不過實際本人沒做過,您可能需要探索一下~
謝謝
我研究
Try the following code
URL url;
HttpURLConnection urlConnection = null;
try {
url = new URL("http://new.cpc.com.tw/Home/");
urlConnection = (HttpURLConnection) url.openConnection();
InputStream in = urlConnection.getInputStream();
BufferedReader r = new BufferedReader(new InputStreamReader(in));
StringBuilder total = new StringBuilder();
String line;
while ((line = r.readLine()) != null) {
total.append(line).append('\n');
}
String htmlSrc = total.toString();
Pattern p = Pattern.compile("<dd>95無鉛 <strong>([0-9.]+)</strong>");
Matcher m = p.matcher(inputString);
while (m.find()) {
System.out.printf(String name = m.group(1));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (urlConnection != null) {
urlConnection.disconnect();
}
}