看板 Python 關於我們 聯絡資訊
簡單的整理一下我的問題: 我寫了一個bbs client來取資料,取回來的資料打算用 readline 讀取一行之後, 用 split() 來切割每個欄位,然後根據位置判斷這是什麼資料,資料長相如下: 3 ˇOversea_Job 工作 ●海外工作版 11 duer/yearue/OA 4 ˇSoft_Job 工作 ◎軟體工作。分享/詢問 20 TonyQ ^ ^ ^ ^ ^ ID 名稱 分類 次分類 版主 但是看起來似乎行不通,會有莫名的斷行,舉例: 10 ˇHomeTeach 家教 ●板規多看 水桶少點 請勿盧解水桶 28 kurosaki1986 11 ˇshare 娛樂 ●[雪兒] 快來對統一發票 (後面換行了) 6 onlysnoopyOD (^ 換行我就趴了) 因此realine之後再切割資料行不通,但是我沒找出一個共通的規則來分析資料欄位, 用空白來切割也行不通,因為版標空格的數量不一定。 因此我的推斷為,ptt的換行符號與一般系統的 \n 或 \r\n 不一樣,應該有特定的 protocol 讓 telnet 或 pcman 可以正常顯示。 有大大有相關的經驗嗎? ※ 引述《walao81 (Male)》之銘言: : 話說很久很久之前呢,我也寫過類似的東西(JAVA),那個時候沒找到太多資料, : 於是我用了另外一個方法去抓 protocol. 寫一個 proxy,然後telnet 這個 proxy 連上 : ptt, 這個proxy 會把所有出去的 protocol 都寫進檔案,然後手動把這些protocol 重組 : 一下就可以變成 bbs 機器人 XD。 不過後來遇到 parse 資料的問題就擺爛了。 : 順便請問一下大家,Ptt 回來的資料有些有換行符號,有些沒有,但是 pcman 或 : telnet 就處理得好好的, 是不是我遺漏了什麼協定? : ※ 引述《wfgh (lyle)》之銘言: : : 我也在嘗試使用這個東西想抓取bbs的資料 : : 但是還是不懂如何下手 : : 回傳的東西(字串)該怎麼存下來呢? : : 我把以下程式碼執行之後 : : 畫面上是會出現平常我們剛登入ptt的一些訊息 : : 但再來我就不知道該怎麼做了 : : 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 115.132.71.167
walao81:樓上為載到的資料 09/13 07:54