您的位置:首页 > 编程语言 > Java开发

Myeclipse和MySql安装及介绍jsoup的主要功能

2018-01-04 20:11 411 查看
一:安装MyEclipse过程及优化

 1.安装MyEclipse过程
   点击打开链接

2.MyEclipse优化

  点击打开链接

二:安装MySql过程及管理工具

 1.安装Mysql过程

点击打开链接

 2.Mysql管理工具Navicat premium

 点击打开链接

三:jsoup简介及其主要功能

 1.jsoup简介

   Jsoup是一款比较好的Java版HTML解析器。可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

 2.jsoup主要功能

 (1)解析一个html字符串

 

   

     
String html = "<html><head><title>开源中国社区</title></head>"
+"<body id='1'><p class='p_1'>这里是jsoup 项目的相关文章</p><h1>这是一个子网页</h1></body></html>";
Document doc = Jsoup.parse(html);
//获取网页的标题
String title=doc.title();
//获取网页body里的与p标签同级的下一个标签的内容
String title=doc.getElementsByTag("p").next().text();
//获取网页中body的内容
String title=doc.body().text();
//获取body里的子标签内容
String title=doc.children().text();
//获取body里的h1标签内容
String title=doc.getElementsByTag("h1").text();
//获取id=“1”的内容
String id=doc.getElementById("1").text();
//获取class=“artical_tag”下的第一个子标签内容
String date=doc.getElementsByClass("artical_tag").first().children().text();
System.out.println(title);


    

(2)从URL直接加载HTML文档并且使用网络代理Agent

  

    

       
String agent="Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36";
String url="http://www.dianping.com/shop/3644416";
Document doc = Jsoup.connect(url).userAgent(agent).post();


(3)使用选择器来查找、取出数据

  

     
String url="http://www.dianping.com/shop/3644416";
Document doc = Jsoup.connect(url).get();
String title=doc.select("#basic-info > div.expand-info.address > span.item").text();
System.out.println(title);


四:示例(大众点评网)

   1.获取评论量

   

           
String url="http://www.dianping.com/shop/83061607";
Document doc = Jsoup.connect(url).get();
String comment=doc.getElementById("reviewCount").text();
System.out.println(comment); 
   


  2.获取人均消费

  

               
String url="http://www.dianping.com/shop/83061607";
Document doc = Jsoup.connect(url).get();
String money=doc.select("#avgPriceTitle").text();
System.out.println(money);
     


 3.获取综合评价

  

               
String url="http://www.dianping.com/shop/83061607";
Document doc = Jsoup.connect(url).get();
String t=doc.getElementById("comment_score").text();
System.out.println(t);
       


4.获取位置

               
String url="http://www.dianping.com/shop/83061607";
Document doc = Jsoup.connect(url).get();
String p=doc.getElementsByClass("desc").text();
System.out.println(p);
     


五:学习感受

    今天是实训的第一天,上午主要是安装了学习的相关软件,我们都能跟上老师的步伐,其中MySql安装过程中有一些需要注意的问题,例如它的编码方式(utf—8),还有就是要设置密码,密码用于访问数据库的使用,这个必须记住,如果你的电脑以前装过MySql的话,一定要删除干净注册表,才可以以安装。下午主要是学习了jsoup的一些功能,用于抓取网页中的数据信息,通过一下午的学习,我体会到你想要获取网页中的某一项的数据信息,可以使用多种方式,但是我觉得使用先选择器来抓取数据的话比较容易实现。

六:遇到的问题

    我们小组做的实训内容是提取大众点评网的数据,今天下午在使用jsoup从URL直接加载HTML文档时,最开始使用的是谷歌浏览器获取网页的数据,但是过了一会数据就没办法获取,使用网络代理Agent也没有管用,之后我换了一个浏览器,还是这种情况。

    我百度了一下java中模拟浏览器访问网页,上面说要建立一个HttpUrlConnection实例。

    

   
HttpURLConnection conn = null;
try {
URL realUrl = new URL(url);
conn = (HttpURLConnection) realUrl.openConnection();
conn.setRequestMethod("GET");
conn.setUseCaches(false);
conn.setReadTimeout(8000);
conn.setConnectTimeout(8000);
conn.setInstanceFollowRedirects(false);
conn.setRequestProperty("User-Agent","Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0");
int code = conn.getResponseCode();
if (code == 200) {
InputStream is = conn.getInputStream();
BufferedReader in = new BufferedReader(new InputStreamReader(is, "UTF-8"));
StringBuffer buffer = new StringBuffer();
String line = "";
while ((line = in.readLine()) != null){
buffer.append(line);
}
String result = buffer.toString();
//subscriber是观察者,在本代码中可以理解成发送数据给activity
subscriber.onNext(result);
}
}catch (Exception e){
subscriber.onError(e);
}


但是不怎么怎么用,不知道对不对,希望老师给点意见。

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: