[問題] 請問要如何拿到驗證碼圖片

作者: qwdfbn (@@)   2015-09-26 02:09:52
剛入門ios + swift,目前在試著做自己的小作品
目前我想試著先自己實現可以在台鐵訂票的功能,但現在卡在送出表單後無法得到圖片驗證碼的圖檔
程式碼大致如下:
Alamofire.request(.POST, url, parameters: parameters, headers: headers)
.responseString { response in
if let html = response.result.value {
print(html)
}
}
其中的parameters和headers都是在firefox的inspect element來的
但所得到的html都是錯誤的訊息。
我想可能是我方法錯了,但我這幾天還是找不到方法能把資料post出去從送回來的網頁原始碼中找到驗證碼的圖檔位址。
想請各位前輩指點一下,先謝謝大家了!
作者: appleway (蘋果愛天空)   2015-09-26 03:47:00
maybe there is a cookie.
作者: ckvir (ckvir)   2015-09-27 16:37:00
先用瀏覽器開發者工具觀察看圖是不是由ajax 取得
作者: qwdfbn (@@)   2015-09-27 17:30:00
小弟很菜其實不太會看是不是ajax傳來的,只會看requst resonse 來post或get資料。最後取得驗證碼的那一個頁面,也有加上cookie去傳資料,拿到驗證碼輸入後傳送還是無法完成訂票。再重開發者工具仔細觀察,在get驗證碼圖片時有個參數pageRandom,這個參數我怎麼找也找不到是怎麼產生的......可能我現在沒有加上那個參數時所拿到的圖片不是正確的吧,嘗試了好久都無法成功訂票,真的好想知道其他app是怎麼實現訂票的...
作者: ckvir (ckvir)   2015-09-27 20:49:00
剛看一下他只是單純的 get 而已pageRandom 只是隨機數字你只要向ImageOut 送出 get 就可以取得圖片了分析圖片數字再對 order_kind1發出get並加上需要參數就好了
作者: qwdfbn (@@)   2015-09-28 00:45:00
謝謝回覆。剛剛試了一陣子送出後他都會說我的訂票程序有問題...我再繼續努力找到底是哪裡出錯了。一開始就卡在這裡好幾天 真的是滿挫折的...
作者: tkju8439 (TARKZIM)   2015-09-30 15:44:00
用responseData接,第三個參數就是你要的bitmap data突然發現其實我誤會你的意思了,我說的是將圖片資料取回顯示的部分
作者: qwdfbn (@@)   2015-10-01 14:28:00
謝謝各位的回覆,圖是拿到了可是表單送出去後,顯示的頁面都說yor ticket booking procedure is wrong.試了一個禮拜還是不成功,我想可能基礎知識太差了吧,目前是先放著去想去想其他東西來做。順便附上之前的程式碼 有點亂又醜xdhttps://goo.gl/llQDbP

Links booklink

Contact Us: admin [ a t ] ucptt.com