最近在朋友的博客里看到了一篇文章,是讲伯乐在线这个网站上有一个面向对象栏目。什么是面向对象呢,面向对象是一个专门为IT单身男女服务的征友传播平台,由伯乐在线专门为程序员爱情创立的一个公益+免费活动。简单来说,网站的女用户在这个栏目组发帖子,包括自己的相关信息,以及理想的男友条件,男生们可以付出一定代价获得女用户保存在网站上的个人联系方式,看对眼的话,就去领证:)
然后呢,我这个朋友关注的点不太主流,他不用爬虫爬妹子照片,或者通过黑客攻击拿到妹子的联系方式,反而用python将所有发表的帖子当中对身高的要求给爬了..>
下面是我将他的代码改进:
1 | import requests |
这个小玩具呢,实际上很简单,通常我在解析网页信息的时候有两种简单粗暴地选择,
BeautifulSoup解析
正则表达式
由于我也没有通过具体的数值计算了解这两种方式的效率,所以我就顺意优先使用BeautifulSoup,如果一个信息通过一次简单的BS解析无法完成时,在这里我就使用Re正则表达式。
通过爬虫信息可以看出,妹子们的要求实际上没有太高,(当然可能是怕吓跑太多人555~),有150+的有效数据,而明确要求最低身高的大概80名左右,经过计算平均值在172左右,嗯,好吧,就这样。