Java课程设计——博客做业教学数据分析系统(201521123082 黄华林)

Java课程设计——博客做业教学数据分析系统(201521123082 黄华林)


1、团队课程设计博客连接

博客做业教学数据分析系统(From:网络五条狗)html


2、我的负责模块或任务说明

1.网络爬虫

首先,一个博客做业教学数据分析系统的基础就是相关的数据。

其次,系统是经过网络爬虫技术抓取博客网页源码上的数据。

最后,将抓取的数据存入设计好的数据库以供提取分析。


3、本身的代码提交记录截图


4、本身负责模块或任务详细说明

1.负责模块

(1)抓取每位同窗每次博客做业网页的浏览量、阅读量、篇幅、图片数量;

(2)把每位同窗的学号和分数、每次博客做业地址、图片数量、篇幅、浏览量、阅读数量存入数据库。

2.任务详细说明

(1)图片数量抓取

利用Jsoup获取网页源码,而后利用getElementsByTag()筛选img标签,统计图片数量。java

(2)文章篇幅抓取

直接利用size()方法统计网页源码篇幅。web

(3)浏览量和阅读量数据抓取

<1>一开始就直接想从做业博客原始连接的元素源码:


想直接用Jsoup方法抓取,以下部分测试代码段:数据库

// 获取目标HTML代码
        Elements elements1 = doc.select("[class=postDesc]");
        // 获取浏览数量
        Elements elements2 = elements1.select("#post_view_count");
        String browse = elements2.get(0).text();
        System.out.println(browse);
        // 得到评论数量
        Elements elements3 = elements1.select("#post_comment_count");
        String comment = elements3.get(0).text();
        System.out.println(comment);

而后两个的抓取的结果都是“...”。json

<2>查看网页源码后以下:

<3>而后利用FireBug调试,得到浏览量的url

而后寻找到浏览量页面的url的规律:"http://www.cnblogs.com/mvc/blog/ViewCountCommentCout.aspx?postId="+"每一个学生的博客连接的postId"
以个人做业为例子查看网页源码:

而后利用select("body").text()获取浏览量。网络

<4>一样得到阅读量的url

拼装办法:"http://www.cnblogs.com/mvc/blog/GetComments.aspx?postId="+postId+"&blogApp="+name+"&pageIndex=0&anchorCommentId=0";
查看网页以下:

网页源码以下:

首先利用HttpClient获取网页html,而后利用json的方法得到commentCount的值。多线程

(4)以上功能的关键代码

抓取图片数量、文章幅度、浏览量、阅读量:

得到评论量的实现:
mvc

(5)创建一个WebCrawler类,链接数据库,利用多线程读取garde表的url、学号、分数,而且利用每一个学生的博客做业地址,抓取四个数据后存入数据库以供数据分析。

采用多线程实现网页数据抓取的关键代码:

运行状况:


数据库:
post


5、课程设计感想

此次java课程设计,咱们组一共五我的。咱们组提早一周,就天天晚上7点集合敲代码。组长给每位同窗都安排好工做,而后每一个人都努力地完成工做。在集合敲代码的时候,我对于数据库和多线程的知识并不牢固,常常遇到瓶颈,这时候我会请教daiker,他对爬虫的使用很了解。咱们采用导入库的方法,利用jsoup、HttpEntity,抓取网页上须要的数据。在使用这些库的时候,不少方法都是实时百度,以网上代码为例,本身经过学习,学以至用,提高了本身解决问题的能力。最后,咱们的课程设计完成了,感谢组长和daiker的带领。咱们经过课程设计,相互了解,相互促进,是一次很好的体验。学习

相关文章
相关标签/搜索