[問題] list中擷取特定文字

作者: Niseel (Niseel)   2019-01-04 16:47:40
各位前輩好,小弟不才
最近自學python一個多月了
目前是玩爬蟲居多
因為最近爬到一個網域
分頁的格式都沒有規律
所以把文字匯入到list中
然後在擷取關鍵字
但因為index是必須完全符合才能抓到
我的問題是
比如我要抓 (費用)NT5,000
但我已經盡力篩選tag
清單輸出會像是
[‘XXXX’, ‘這門課(費用)NT5,000 目前優惠’, ‘AAAA’, .......]
我應該如何擷取
謝謝前輩學長姐指教
———————我是補充——————
本身非什麼資訊相關科系,
所以也是第一次自學語言
想說用爬蟲來幫我找課程(也順便練習python),說不定有機會可以去上上
就剛好看的這個網站
http://ewda.tw/
中華民國職工福利發展協會
http://ewda.tw/modules/ewda_action/action.php?asn=3978
http://ewda.tw/modules/ewda_action/action.php?asn=3999
像這類型的分頁
不同分頁下抓費用沒問題
但是抓老師姓名就一直找不到共通解
目前是使用papple大提示的join()
再用位移值來抓字
暫時解決「能一次套用在不同分頁」擷取老師姓名
但假設老師姓名如果是兩個字或四個字
位移值就會失效
這樣是不是就只能使用re來判別呢
註:目前只會使用BS來解析,沒有要伸手要code,因為這樣我也不會進步,所以算是請教
一些提示,畢竟有時候google也不知道使用什麼關鍵字...
先謝謝各位熱心的前輩
作者: XperiaZ6C (真●安卓輕旗艦)   2019-01-04 17:02:00
正規表示式還是你只是要包含NT5000的element都要抓出來
作者: germun (ger)   2019-01-04 17:08:00
import re 用法上網查
作者: InfinityGate (小鳥)   2019-01-04 18:29:00
re,不過這感覺用xpath篩text就好了吧
作者: papple23g (逆道者)   2019-01-04 19:43:00
(假設你的清單叫tag_list)new_tag_list=[tag for tag in tag_list if ("費用" intag) or ("資訊" in tag)]
作者: XperiaZ6C (真●安卓輕旗艦)   2019-01-04 09:02:00
正規表示式還是你只是要包含NT5000的element都要抓出來
作者: germun (ger)   2019-01-04 09:08:00
import re 用法上網查
作者: InfinityGate (小鳥)   2019-01-04 10:29:00
re,不過這感覺用xpath篩text就好了吧
作者: papple23g (逆道者)   2019-01-04 11:43:00
(假設你的清單叫tag_list)new_tag_list=[tag for tag in tag_list if ("費用" intag) or ("資訊" in tag)]
作者: jiyu520 (不要鯽魚我)   2019-01-04 15:19:00
你試了就知道。
作者: jasonfghx (工人)   2019-01-04 17:38:00
有沒有網頁?
作者: nini200 (200妮妮)   2019-01-05 04:34:00
直接給網址
作者: hoho8 (hoho)   2019-01-06 08:00:00
https://i.imgur.com/Xlotm1d.png 不知道怎麼貼文字,所以用圖片的方式 (有單純分享文字的網站嗎)

Links booklink

Contact Us: admin [ a t ] ucptt.com