基本信息
源码名称:java采集csdn文章(jsoup爬虫示例)
源码大小:0.02M
文件格式:.zip
开发语言:Java
更新时间:2019-04-25
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
package springboot.jsoup; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import java.io.*; import java.net.HttpURLConnection; import java.net.URL; public class JsoupDemo { private static OutputStream os; public static void main(String[] args) { try { Document doc = Jsoup.connect("https://blog.csdn.net/qq_15260315").get(); //指定文件名及路径 File file = new File("D:\\jsoup\\word\\csdn.txt"); if (!file.exists()) { file.createNewFile(); } //获取标题和地址的对象 Elements titles = doc.getElementsByClass("article-item-box"); //写入本地 PrintWriter pw = new PrintWriter("D:\\jsoup\\word\\csdn.txt","UTF-8"); for (Element e:titles) { Elements a = e.select("h4").select("a"); pw.println(a.attr("href")); pw.println(a.text()); pw.println("------------------------------------------------------------------------------------------------------------------------------------"); try { //增加访问量 Document d = Jsoup.connect(a.attr("href")).get(); //输出文章内容 Elements view = d.getElementsByClass("htmledit_views"); System.out.println(view.text()); //如果有图片,获取页面上的图片保存到本地 Elements imgs = view.select("img"); if (!imgs.isEmpty()) { for (Element img : imgs) { int j = 0; // URL u = new URL(img.attr("src")); URL u = new URL("https://avatar.csdn.net/0/B/B/2_qq_15260315.jpg"); HttpURLConnection connection = (HttpURLConnection) u.openConnection(); //因为服务器的安全设置不接受Java程序作为客户端访问,所以设置客户端的User Agent connection.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)"); //获取数据流 InputStream is = connection.getInputStream(); //写入本地 os = new FileOutputStream(new File("E:\\jsoup\\img", a.text() j ".png")); byte[] b = new byte[1024]; int i = 0; while ((i = is.read(b)) != -1) { os.write(b, 0, i); } is.close(); os.close(); j ; } } }catch (Exception ex){ } } pw.close(); //关闭输出流 } catch (IOException e) { e.printStackTrace(); } } }