Java做爬虫也太牛

优采云 发布时间: 2020-05-20 08:00

  

  首先我们封装一个Http恳求的工具类,用HttpURLConnection实现,当然你也可以用HttpClient, 或者直接用Jsoup来恳求(下面会提到Jsoup)。

  工具类实现比较简单,就一个get方式,读取恳求地址的响应内容,这边我们拿来抓取网页的内容,这边没有用代理java爬虫技术,在真正的抓取过程中,当你大量恳求某个网站的时侯,对方会有一系列的策略来禁用你的恳求,这个时侯代理就排上用场了,通过代理设置不同的IP来抓取数据。

  接下来我们随意找一个有图片的网页,来试试抓取功能

  首先将网页的内容抓取出来,然后用正则的方法解析出网页的标签,再解析img的地址。执行程序我们可以得到下边的内容:

  通过前面的地址我们就可以将图片下载到本地了,下面我们写个图片下载的方式:

  这样就很简单的实现了一个抓取而且提取图片的功能了,看起来还是比较麻烦哈,要写正则之类的 ,下面给你们介绍一种更简单的方法,如果你熟悉jQuery的话对提取元素就很简单了,这个框架就是Jsoup。

  jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套特别省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

  添加jsoup的依赖:

  使用jsoup以后提取的代码只须要简单的几行即可:

  通过Jsoup.parse创建一个文档对象,然后通过getElementsByTag的方式提取出所有的图片标签,循环遍历,通过attr方式获取图片的src属性,然后下载图片。

  Jsoup使用上去十分简单,当然还有好多其他解析网页的操作,大家可以去瞧瞧资料学习一下。

  下面我们再来升级一下,做成一个小工具,提供一个简单的界面,输入一个网页地址,点击提取按键,然后把图片手动下载出来java爬虫技术,我们可以用swing写界面。

  执行main方式首先下来的就是我们的界面了,如下:

  屏幕快照 2018-06-18 09.50.34 PM.png

  输入地址,点击提取按键即可下载图片。

  课程推荐

  大数据时代,如何产生大数据。

  大用户量,每天好多日志。

  搞个爬虫,抓几十亿数据过来剖析剖析。

  并不是只有Python能够做爬虫,Java照样可以。

  今天带你们来写一个简单的图片抓取程序,将网页上的图片全部下载出来

  image

  本课程将率领你们一步一步编撰爬虫程序,爬到我们想要的数据,非登录的或则须要登录的都爬出来。

  学完本课程将学员培养成为合格的Java网路爬虫工程师,并能胜任相关爬虫工作;

  学完才能熟练使用XPath表达式进行信息提取;

  学完把握抓包技术,掌握屏蔽的数据信息怎样进行提取,自动模拟进行Ajax异步恳求数据;

  熟练把握jsoup提取网页数据。

  selenium进行控制浏览器抓取数据。

  课程大纲

  HttpURLConnection用法解读

  静态网页抓取

  jsoup解析提取网页信息

  模拟ajax进行POST恳求抓取数据

  模拟登录网站抓取数据

  selenium抓取网页实战

  htmlunit抓取动态网页数据

  IP代理池建立

  多线程抓取实战

  WebMagic框架实战爬虫

  抓取图书数据

  图书数据储存mongodb

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线