[问题] 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