應該好少人會選擇用 static typing 嘅 language 做 parsing

定好哂啲 schema , 啲 website  ...
hihihi123hk 發表於 2017-3-26 16:17

最絕咪加多個 web automation testing tool 做 selection
咁佢改 layout 就無計 jei

TOP

本帖最後由 hihihi123hk 於 2017-3-26 17:46 編輯

如果 parsing 係一個非常 Core 嘅一部份, Monolithic 咁做只會玩殘自己 ( 例如將幾十個 Website 嘅 Parsing Logic 放落同一個 Application )

用番 Micro-service 嘅 Pattern,揀番一隻最適合嘅 Language 去做,唔洗局限自己一定用番同 Application 一樣嘅 language



一個 Website 有一個對應嘅 Parsing Service, 有咩事 Parse 唔到嘅時候就出 Alert

要有效實踐 Micro-service 嘅大前提當然係做到 CD (例如 git push 之後就全自動 Build + Deploy + Rolling update),不過淨係呢一點,香港都唔知有無 1 成公司做得到
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

TOP

如果 parsing 係一個非常 Core 嘅一部份, Monolithic 咁做只會玩殘自己 ( 例如將幾十個 Website 嘅 Parsing ...
hihihi123hk 發表於 2017-3-26 17:44


全自動好危險
起碼都俾其他人玩下O唔OK先再roll out啦

TOP

應該好少人會選擇用 static typing 嘅 language 做 parsing

定好哂啲 schema , 啲 website  ...
hihihi123hk 發表於 2017-3-26 16:17



咁既話, php都係dynamic, 點解唔係php呢? 係library較差?

TOP

回覆 13# KinChungE


正正常常用 develop branch 直出 staging 慢慢試  

無問題就 merge 落 master 直出 production

(經人手 Roll out 先係最危險 )

TOP

回覆 14# 3ldk

我相信 library 大家都差唔多係咁用架喇 (類近 jQuery 個用法)

都係個人口味問題,不過 javascript 比 php 都有啲明顯優點

javascript ES6 好寫咗好多
1. arrow function
2. 唔洗打 ; 號
3. construct/destruct object 都比 php 方便

JSON support 得開心啲
javascript 有真 const
Nodejs runtime 有自己嘅  process ,  Deploy 易控制好多
Nodejs 出 log 方便好多
Nodejs default Non-blocking API
  1. function doSomething({ title, body }, cb) {
  2.      someAsyncCall(body, cb)
  3. }

  4. doSomething({ title : "abc", body: "def"}, result => {
  5.     console.log(result)
  6. })
複製代碼
你可以試下 translate 上面嘅 javascript 變 php 會寫成點

TOP

回覆  3ldk

我相信 library 大家都差唔多係咁用架喇 (類近 jQuery 個用法)

都係個人口味問題,不過 jav ...
hihihi123hk 發表於 2017-3-26 20:31



我後來再諗真D, 發覺問既方向其實錯左, 重點唔應該放係parse html上面

而係應該放係bot既能力, 爬蟲能力, 破解能力, 模擬browser等等既能力上面

因為有時唔係簡單send個request, 就可以拎到想要既內容, 所以比起parse html, 上述能力更為重要

例如我之前遇過一個網頁, 當頁面load完後, 中間仲有個框, 由另一個request load入去
又例如有D網站, 如果request唔係browser發出, 就唔會有正確response

所以在抓取網頁的實際情況, 仲有好多奇怪問題要解決

在Java, 有HtmlUnit, 佢可以在程式內部模擬一個browser, 咁起碼扮browser依一part, 唔洗自己實作先
遇上超難搞的網頁, 仲有終極既Selenium, 用一個真實既browser去load網頁

咁在node.js呢? 有無咁完善既library去抓取網頁既資料?
睇過cherrio, 應該就無依類機制同功能

如果node.js上的資源可以取代到Java的話, 我未來應該都會轉用node.js, 因為寫javascript始終方便好多

TOP

本帖最後由 hihihi123hk 於 2017-3-27 01:26 編輯

回覆 17# 3ldk


    javascript 有 phantomJs  基本上同你講嘅  HTMLUnit 係同一樣野 (headless web browser),分別在於 phantomJs 係用真 Webkit,  HtmlUnit 只係用一啲 Js Engine simulate...

有啲人用佢黎寫 UI automation Test case.  當然你用佢黎做 parsing agent 一樣可以,用 phantomjs 拎啲啲己經 Render 好咗嘅  Html  再 pass 比 Cherrio 做 Parsing 可以一體式用 javascript  寫

當然你用 Java 都可以駁 PhantomJs,有啲人都做咗啲 Bridge

TOP

有captcha 或雙password Login form 用唔用得著?

via HKEPC Reader for Android

TOP

有captcha 或雙password Login form 用唔用得著?

via HKEPC Reader for Android
kof2002 發表於 2017-3-27 06:31


有paid service幫你解captcha

TOP