这里只演示最简单的一个爬虫

准备:需要导入一个jar包>> jsoup 下载链接

(jsoup 是用于爬虫的一个框架,除此之外的还有jSpider、HTMLUnit 、Jaunt)

import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;class SimpleSpider{Document getDoc(String url) throws IOException {Document doc=Jsoup.connect(url).get();return doc;}Elements getElementAs(Document doc) {//cssQuery syntax:https://jsoup.org/apidocs/org/jsoup/select/Selector.htmlElements a=doc.select("a[href]");//finds links (a tags with href attributes)                       return a;}
}
public class SimpleOne {public static void main(String[] args) throws IOException {SimpleSpider s=new SimpleSpider();Document doc=s.getDoc("https://www.baidu.com/");//System.out.println(s.getElementAs(doc));Elements aSet=s.getElementAs(doc);for(Element i :aSet) {System.out.println(i.attr("href"));//get attr href}System.out.println("end");}}

我现在也只是刚接触,发现利用这些框架的话,其实Java 爬虫看起来也没那么冗余

网页解析起来也不复杂

不过,你如果不借助这些框架的话。。

import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;public class WithNoExtraJar {public static void main(String[] args) {// TODO Auto-generated method stubURL url;InputStream is = null;DataInputStream dis;String line;try {url = new URL("https://www.baidu.com/");is = url.openStream();  // get connectiondis = new DataInputStream(new BufferedInputStream(is));while ((line = dis.readLine()) != null) {System.out.println(line);}} catch (MalformedURLException mue) {mue.printStackTrace();} catch (IOException ioe) {ioe.printStackTrace();} finally {try {is.close();} catch (IOException ioe) {// nothing to see here}}}}

上面只是获取网页源代码的程序,都还没开始解析,就已经一大坨了,看了就头大

所以,还是用框架好。。


除了Java,还有挺多语言也可以写爬虫的

比如说:

Ruby、node.js、python、C++、php

各有特点吧,不过现在最火的是python

Java 的话,我个人认为,多线程不赖了

(Google和百度都查了,真的找不到有人对Java爬虫的评价,噗 好像是故意被冷落了)

Java 简单爬虫 代码相关推荐

  1. 编写Java网络爬虫代码

    好的,我会用中文来回答你的问题. 首先,在编写Java网络爬虫代码之前,你需要了解一些基本的Java知识,并确保你已经安装了Java开发工具包(JDK). 在编写Java爬虫代码时,你可以使用Java ...

  2. SpringBoot-Jsoup做java简单-爬虫

    使用SpringBoot+Jsoup做java简单'爬虫' Jsoup简介 Jsoup是一款java的Html解析器,可以直接解析Html.针对网页提供了相关Api,可以通过Dom.Css.Jquer ...

  3. python简单爬虫代码-最精简的爬虫 --仅需4行代码(python)

    最精简的爬虫 --仅需4行代码(python) 刚刚整理了下爬虫系列,于是乎就开始了第一次的技术分享 今天,我们主要讲述的是思路,思路,思路. 相比起,直接贴代码,思路显的更为重要 当初,自己的坑,希 ...

  4. 大数据爬虫基础(四)MAVEN的安装配置和使用(下)--JAVA简单爬虫

    eclipse maven 环境: windows 10pro x64 jdk1.8 eclipse mars 1.安装设置maven插件 window->preferences->Ins ...

  5. 爬虫python代码-一则python3的简单爬虫代码

    不得不说python的上手非常简单.在网上找了一下,大都是python2的帖子,于是随手写了个python3的.代码非常简单就不解释了,直接贴代码. 代码如下: #test rdp import ur ...

  6. python简单爬虫代码-python爬虫超简单攻略,带你写入门级的爬虫,抓取上万条信息...

    原标题:python爬虫超简单攻略,带你写入门级的爬虫,抓取上万条信息 最近经常有人问我,明明看着教程写个爬虫很简单,但是自己上手的时候就麻爪了...那么今天就给刚开始学习爬虫的同学,分享一下怎么一步 ...

  7. python简单爬虫代码-一则python3的简单爬虫代码

    不得不说python的上手非常简单.在网上找了一下,大都是python2的帖子,于是随手写了个python3的.代码非常简单就不解释了,直接贴代码. 代码如下: #test rdp import ur ...

  8. python简单爬虫代码-用Python编写一个简单的爬虫

    作者信息: Author : 黄志成(小黄) 博客地址: 博客 呐,这是一篇福利教程.为什么这么说呢.我们要爬取的内容是美图网站(嘿嘿,老司机都懂的) 废话不多说.开始今天的表演. 这个图集网站不要问 ...

  9. python简单爬虫代码-使用Python3.5写简单网络爬虫

    <一>用urllib库访问URL并采集网络数据 -1. 直接采集 发送请求,打开URL,打印传回的数据(html文件) - 2. 模拟真实浏览器访问 1)发送http头信息(header) ...

  10. java简单记事本代码_简单记事本的java程序代码

    展开全部 天啊, 冖_Na0 为什么会有62616964757a686964616fe4b893e5b19e31333262343038我编的记事本代码呢???呵呵--你肯定是"请教&quo ...

最新文章

  1. 机器学习——线性回归数学推导
  2. 这份程序员的简历刷爆了九月的朋友圈
  3. 用科幻艺术描绘未知的魅力-人物篇
  4. MYSQL的函数有哪些?(4.3时间与日期函数)
  5. fusionsphere读音_hydroxyapatite
  6. IDEA启动项目报错:Error:(1, 1) java: 非法字符: '\ufeff'
  7. Matlab——图像平移
  8. jupyter notebook一些实用技巧
  9. DedeCMS自定义表单制作和调用办法
  10. Edit Control中追加文字
  11. java设置环境变量win7_Windows7系统配置java环境变量的详细教程
  12. SQL语句——查询语句
  13. 模仿LordPE写了个PE解析工具
  14. 【嵌入式模块】DS1302 时钟定时芯片
  15. linux dns访问日志内容格式,谢烟客---------Linux之DNS请求流程及资源记录定义
  16. 将ceph与calamari相连(connect ceph servers to calamari)
  17. python设计一个学生类姓名年龄成绩_C# 编写学生类Student,包含学生姓名,成绩,设计一个友员函数sortDegree(),将学生成绩按大到小排序。...
  18. 字节跳动确认将自研芯片;美国国土安全部被曝大量购买和使用手机定位数据;谷歌被俄罗斯罚款3.6亿美元 | 每日大事件...
  19. 彩超探头频率高低的区别_【干货】超声探头及使用技巧
  20. 我的Android说

热门文章

  1. 数据结构算法与应用c++语言描述 pdf +源代码,数据结构算法与应用-c++语言描述(清晰版).pdf...
  2. Vfloopy仿真虚拟软驱写软盘
  3. Citrix 桌面云 XenApp_XenDesktop_7.18 部署
  4. Ubuntu 定时锁屏3.0
  5. 最新手机号段归属地数据库 (2021年4月版) 473101行
  6. 最新手机号码归属地数据库(2017年4月1日)
  7. 手机号归属地查询实例
  8. 关于VLAN划分的项目案例
  9. 华为2288服务器怎样查看硬盘,华为RH2288H V2磁盘系统测试_华为 FusionServer RH2288 V2_服务器评测与技术-中关村在线...
  10. 架设传奇时打开DBC数据库出错或读取DBC失败解决方法