本人担任职友集的java工程师五年,其中抓取数据占主要的一部分,抓取的信息只要有两部分,职位和简历,其中职位的抓取量为日均插入量为30万,更新量为60万,抓取全国300多个人才网站。职友集(现在改名为跳哪网)现在是全国职位量最高的垂直搜索引擎。月均广告收入约20万左右。当然这是经过我们团队的努力。
我们在职位抓取方面是下了很大的一番功夫,使我们的职位量无法被人超越,首先现在很多人才网站为人防止其它网站抓取它的信息,都在封IP,尤其是中华英才网,我们为了向我们的用户提供大而全的职位信息,时刻作出我们的努力。我们为了解决封IP的问题,我取采取了多代理的方式。充分而均衡的运用多IP,有效的解决了封IP的问题。除了封IP的问题外,有一些网站为了防止其它人抓取他的企业联系信息,把企业的联系信息如电话号码,邮箱等放在图片中,我们为了我们的用户,可谓是呕心沥血地解决问题。我们经过我们的长期研究,可以有效地读取图片中的文字信息。为我们的访客提供良好的信息体验。
我们的抓取在提取网站信息方面是用正则表达式,而不是用其它的,这样是有我们的理由的,因为如果有带有浏览器性质的插件,这样会为整个抓取带来很多风险。
首先,在解析脚本方面会存在不稳定因素,可能会令整个程序运行得很慢,很耗CPU资源。可能会因为某个脚本的运行不当而令整台服务器down机。而且用浏览器式插件。速度很慢,不能满足日常的抓取需求。所以我们放弃了用浏览器式插件。而改用javahttpURLConnection来抓取网页的html源代码,用正则表达式提取网页的特定内容。然而正则表达式用起来虽然很方更,但也存在一个比较重要的问题,如果一不小心有一条正则表达式写错了,会相当耗CPU资源,CPU的占用率会突然提升起来。而且会一直居高不下。我们为了能解决之个问题,我们修改了java.util.regex.Pattern类,一但正则表达式长期占用CPU资源高居不下,程序自动终止正则的匹配,并记录错误。方便查看那一条正则写错了。在抓取时有可能会遇到需要登录才能获取页面的情况。而且有时登录时需要输入验证码等情况,我在抓取方面,对ocr都有很深入的研究,大部分不太复习的验证码都可以通过编程方法破解。实现自动登录时通过提交通过提交通数,然后获得cookie,然后再通过这个cookie获得那些登录后才能看到的页面。
分享到:
相关推荐
java抓取网页数据实现
java网页抓取数据
Java网页抓取数据
java抓取网站数据
java爬虫抓取城市数据,数据抓取后直接持久化到数据库当中。博客地址http://blog.csdn.net/qq_23994787/article/details/78107890 如果没有积分的话,在主页给博主发邮件获取。
Java抓取https网页数据,解决peer not authenticated异常。导入eclipse就能运行,带有所用的jar包(commons-httpclient-3.1.jar,commons-logging.jar,httpclient-4.2.5.jar,httpcore-4.2.4.jar)
java httpclient 抓取 数据 和jar 包
java抓取网页数据,主要用于抓取手机号和身份证查询网站的数据。
java爬虫抓取网页数据教程.pdf
非常好的一个java版本的网络爬虫,下载直接可以运行。可以后台登陆然后再抓取。值得大家研究。
利用HttpClient抓取网页中简单的数据,数据可存入数据库进行分析
通过java抓取任何指定网页的数据,里面介绍了java如何实现抓取技术,抓取指定的网页数据并解析
简单的实现网页数据抓取的demo。java实现
可以直接运行。java利用htmlparser抓取网页数据
java爬虫抓取网页数据教程(20210809124656).pdf
Java抓取网页数据的两种方法:(1)抓取原网页 (2)抓取网页JS返回数据
java解析html抓取网站数据采集网站信息
点评网美食数据抓取代码--java 实现
java程序,能进行简单的网页抓取,及数据抓取,里面还有火车采集器的内容
自己写的一个很垃圾的页面抓取工具 仅供参考