日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java phantomjs_Java爬虫:Jsoup + Phantomjs

發布時間:2024/9/19 java 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java phantomjs_Java爬虫:Jsoup + Phantomjs 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

(一)Jsoup

Jsoup是一個Java開源HTML剖析器,可直接剖析某個URL地點、HTML文本內容。經由過程Dom或Css選擇器來查找、掏出數據,完成爬蟲。

maven坐標

org.jsoup

jsoup

1.11.2

演示Demo

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.select.Elements;

import java.io.IOException;

public class JsoupDemo

{

public static void main( String[] args ) throws IOException {

Document doc = Jsoup.connect("http://www.baidu.com").get();

System.out.println("title:"+doc.title());

Elements es = doc.select("area");

//Elements es = doc.getElementByTag("area");

System.out.println("百度圖片點擊途徑:"+es.attr("href"));

}

}

(二 )PhantomJs

PhantomJS是一個可編程的無頭瀏覽器。經由過程PhantomJs能夠收集Ajax天生的內容。

無頭瀏覽器:一個完全的瀏覽器內核,包含js剖析引擎,襯著引擎,要求處置懲罰等,然則不包含顯現和用戶交互頁面的瀏覽器。

步驟:

下載安裝,設置環境變量

編寫并實行js劇本

演示Demo

var page = require("webpage").create(), //網頁對象

system = require("system"), //體系對象

address,t;

phantom.outputEncoding='gbk'; //設置輸出編碼

//phantom.outputEncoding='utf-8'; //設置輸出編碼

var arr = system.args;

//推斷參數是不是傳入

if(arr.length==1){

console.log("請輸入待要求url");

phantom.exit(0);

} else {

address = arr[1];

console.log("最先接見頁面:"+address);

t = Date.now();

//接見頁面

page.open(address,function(status){

if(status !== 'success'){

console.log('page faild to load.');

phantom.exit();

} else {

t = Date.now() - t;

console.log("頁面接見完畢:耗時:"+t+"ms");

//引入jquery

page.includeJs("http://code.jquery.com/jquery-2.2.4.min.js",function(){

var result = (page.evaluate(function(){

return $('area').attr('href');

}));

console.log("圖片點擊途徑:"+result);

phantom.exit();

})

}

})

}

假定文件名為 c:/baidu.js;在命令行中實行 phantomjs c:/baidu.js http://www.baidu.com

java 挪用Phantomjs

演示Demo

import java.io.*;

public class PhantomJsDemo

{

public static void main( String[] args ) throws IOException {

Runtime rn = Runtime.getRuntime();

String url = "http://www.baidu.com"

Process process = rn.exec("phantomjs c:/baidu.js " + url);

BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));

StringBuffer sb = new StringBuffer();

String temp = "";

while((temp=br.readLine())!=null){

sb.append(temp);

}

System.out.println(sb.toString());

}

}

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的java phantomjs_Java爬虫:Jsoup + Phantomjs的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。