网络爬虫
2023-09-14 09:08:04 时间
当然,数据挖掘,数据准备部分考虑这样做:配置文件的基础上,打开相应的网站,并保存。之后这些文件的内容,然后分析、文本提取、矩阵变换、集群。
public static void main(String[] args){ final int THREAD_COUNT=5; String baseUrl=null; String searchBlogs=null; String blogs[]=null; String fileDir=null; //String category=null; InputStream inputStream =CsdnBlogMining.class.getClassLoader().getResourceAsStream("config.properties"); Properties p = new Properties(); try { p.load(inputStream); baseUrl=p.getProperty("baseUrl"); fileDir=p.getProperty("fileDir"); searchBlogs=p.getProperty("searchBlogs"); if(searchBlogs!=""){ blogs=searchBlogs.split(";"); } ExecutorService pool=Executors.newFixedThreadPool(THREAD_COUNT); for(String s:blogs){ pool.submit(new SaveWeb(baseUrl+s,fileDir+"/"+s+".html")); } pool.shutdown(); //category=new String(p.getProperty("category").getBytes("ISO-8859-1"),"UTF-8"); } catch (IOException e) { e.printStackTrace(); } }
打开网页并保存模块:
public class SaveWeb implements Runnable{ private String url; private String filename; public SaveWeb(String url,String filename){ this.url=url; this.filename=filename; } @Override public void run() { HttpClient httpclient = new DefaultHttpClient(); HttpGet httpGet = new HttpGet(url); httpGet.setHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; rv:6.0.2) Gecko/20100101 Firefox/6.0.2"); try{ HttpResponse response = httpclient.execute(httpGet); HttpEntity entity = response.getEntity(); BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(filename)); if(response.getStatusLine().getStatusCode() == HttpStatus.SC_OK){ if (entity != null) { String res=EntityUtils.toString(entity,"UTF-8"); outputStream.write(res.getBytes("UTF-8")); outputStream.flush(); } } outputStream.close(); }catch(IOException e){ e.printStackTrace(); } } }
兴许:
作业完毕了,但差点儿和上面的内容没啥关系,本来想全删了。
再想也不算写错。仅仅是没用上而已。还是留着吧。
终于,用java代码循环加并发去获得一个地址列表存到文件中。
而採用R语言去做的挖掘工作。包含获取网页、解析正文、分词、聚类、结果输出等。R语言真是省事,几十行代码全搞定了。但终于分类的结果不理想。看来基于全文的计算通用,刻出来的类是非常不准确,我们必须考虑改进。
版权声明:本文博主原创文章,转载保留原文链接。
相关文章
- 爬虫+反爬虫+js代码混淆
- 代理IP如何帮助网络爬虫实现高效爬取?
- 一个小工具可以更快的写爬虫
- 爬虫为啥需要大量的ip_简述网络爬虫的工作原理
- Screaming Frog SEO Spider for Mac(网络爬虫开发工具) 18.1注册激活版
- java爬虫利器Jsoup的使用
- python简单爬虫详解编程语言
- JAVA网络爬虫抓数据jar包Jsoup的简易用法详解编程语言
- 网络爬虫笔记详解编程语言
- 网络爬虫是什么?
- Go语言网络爬虫概述
- Go语言网络爬虫调度器的实现
- Linux C语言编写网络爬虫的实践分享(linuxc网络爬虫)
- 网络爬虫的价值
- 使用Linux编写爬虫程序,高效下载网页资源(linux爬虫下载)
- Redis解决多爬虫优化挑战(多爬虫redis)
- 教你如何编写简单的网络爬虫
- python网络爬虫采集联想词示例
- 使用Python编写简单网络爬虫抓取视频下载资源
- python爬虫入门教程之点点美女图片爬虫代码分享