需求分析
昨天,我做了一个爬取彩票预测的程序,其中首次使用到了beautifulsoup4进行数据的解析,和平时最大的区别在于,没有使用xpath解析数据,而是使用了css的选择器。不过没想到的是,昨天却有一位小伙伴说他不喜欢使用beautifulsoup4
他说,“BeautifulSoup的名字太长了,使用起来经常拼错,所以我不喜欢用beautifulsoup4。仙草哥哥你为什么不试一试Selector呢?Selector使用起来非常方便,而且还有css选择器,我觉得,这个比bs4更好用“
没想到,beautifulsoup4不受欢迎的原因居然会是,名字太长!看来,这也提醒了我们,平时起名字的时候一定要选择一个简单易读,朗朗上口,容易拼写的名字啊!
另外,在我昨天做了爬取彩票预测的程序以后,有一位喜欢彩票的小伙伴看到了,非常高兴,但是他还希望我们能够顺便提供一下开奖信息,这样的话,就可以很方便的看到本期的彩票开奖号码了,好吧,其实这也不是什么困难的事情,本期我们就来实现一下,能够同时满足这两位小伙伴的想法
实现分析
首先,我们需要搞清楚的是,昨天这位小伙伴提到的Selector,指的是scrapy中的一个组件,Selector,通过from scrapy import Selector,就能够引入这个Selector选择器
另外,关于说Selector比beautifulsoup4更好,是否有依据呢?如果说是从使用的方便程度上来说,Selector提供的接口可能更容易使用一些。但是从实现上,scrapy是不是也引入了beautifulsoup4,从而做出来的Selector呢?嗯,那是另外一回事了,我们并不纠结于此。也可以说是,bs4从未离开,它只是换了一种形式陪伴着我们
总而言之呢,Selector的使用非常方便,首先引入Selector选择器,然后通过Selector解析html,然后直接使用css()的方法,就