相比于C#,java爬虫,python爬虫更为方便简要,首先呢,python的urllib2包提供了较为完整的访问网页文档的API,再者呢对于摘下来的文章,python的beautifulsoap提供了简洁的文档处理功能,这就成就了他爬虫的优势。
作为一名满脑子要成为一名大牛的程序员小白来讲,倒不是非要热爱哪一门语言,还是觉得哪一个好用而用之。
那么今天呢就来给大家分享一个我喜欢但是不好用的java爬虫系列...
先上码和效果图
package org.lq.wzq.Test; /** * 读取青年网的数据,并进行分析 * xutao 2018-11-22 09:09 */ import java.io.*; import java.net.*; public class pachong { public static void main(String args[]){ //确定爬取的网页地址,此处为青年网热点新闻的网页 //网址为 http://news.youth.cn/sz/201811/t20181121_11792273.htm String strurl="http://news.youth.cn/sz/201811/t20181121_11792273.htm"; //建立url爬取核心对象 try { URL url=new URL(strurl); //通过url建立与网页的连接 URLConnection conn=url.openConnection(); //通过链接取得网页返回的数据 InputStream is=conn.getInputStream(); System.out.println(conn.getContentEncoding()); //一般按行读取网页数据,并进行内容分析 //因此用BufferedReader和InputStreamReader把字节流转化为字符流的缓冲流 //进行转换时,需要处理编码格式问题 注意一般为GBK或者UTF-8(乱码就换另外一个) BufferedReader br=new BufferedReader(new InputStreamReader(is,"GBK")); //按行读取并打印 String line=null; while((line=br.readLine())!=null){ System.out.println(line); } br.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
查看网站源码,你就会发现程序爬取的其实就是整个网页
而代码则是一行一行输出的,具体的整理关键点在于正则表达式的应用,拿到适合自己的数据,最后在储存到txt或者excle表格中。
具体详情请观看
1.java导入excle表格,并且对表格进行相应的修改,并对表格数据进行整理,最后导出本地表格等一系列操作
2.java读取txt文件,对字符串进行操作后导出txt文件