程序员租房妙招
通过爬虫自己做个检索来找房子,有了这个想法后就试着做一下,首先有一个大概思路:
需开发的爬虫可分为如下模块:
整个架构和其他爬虫基本一样,但自如为防止爬虫,搜索结果最多显示50页,对应办法就是遍历重要的查询参数,比如城市、地铁站、房子类型等。于是解析模块的顺序大概是: 1. 城市列表解析器,用来解析不同城市(当然这里只需要北京) 2. 地铁站解析器,用来解析出不同的地铁站 3. 房屋列表解析器,用来解析每一页的房屋列表和下一页待解析的任务 4. 房屋详情解析器,用来解析房屋的详细信息,如朝向、面积、户型、楼层、阳台、室友等 这里需要注意几点: 1. 爬虫使用 golang,它本身没有解析库,可以用第三方的 css 样式选择器、xpath,也完全可以用正则搞定,这里主要用正则实现,部分地方试用了下 css 选管有这么个神器,但解析成功率依然不能保证 100%,尤其是在没有训练的情况下,因此就需要像上面代码中那样,在短期内想提高效率就添加部分人工识别的代码,并降低重复工作,也能基本满足需求。
接下来是写入存储,这里为快捷实现,我们用 docker 在本机运行 es 和kibana,如 (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |