本文整理匯總了Java中org.jsoup.Connection.cookies方法的典型用法代碼示例。如果您正苦於以下問題:Java Connection.cookies方法的具體用法?Java Connection.cookies怎麽用?Java Connection.cookies使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.jsoup.Connection
的用法示例。
在下文中一共展示了Connection.cookies方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: loadParse
import org.jsoup.Connection; //導入方法依賴的package包/類
/**
* 按照規則,加載解析html
* @param url :加載URL
* @param paramMap :請求參數
* @param cookieMap :請求cookie
* @param ifPost :是否使用post請求
* @param tagMap :解析規則[0-選擇器方式、1-id方式、2-class方式、3-tag]
* @return
*/
public static Elements loadParse(String url, Map<String, String> paramMap, Map<String, String> cookieMap,
boolean ifPost, Map<Integer, Set<String>> tagMap) {
if (!isUrl(url)) {
return null;
}
try {
// 請求設置
Connection conn = Jsoup.connect(url);
conn.userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36");
if (paramMap != null && !paramMap.isEmpty()) {
conn.data(paramMap);
}
if (cookieMap != null && !cookieMap.isEmpty()) {
conn.cookies(cookieMap);
}
conn.timeout(5000);
// 發出請求
Document html = null;
if (ifPost) {
html = conn.post();
} else {
html = conn.get();
}
// 過濾元素
Elements resultAll = new Elements();
if (tagMap != null && !tagMap.isEmpty()) {
for (Entry<Integer, Set<String>> tag : tagMap.entrySet()) {
int tagType = tag.getKey();
Set<String> tagNameList = tag.getValue();
if (tagNameList != null && tagNameList.size() > 0) {
for (String tagName : tagNameList) {
if (tagType == 0) {
Elements resultSelect = html.select(tagName); // 選擇器方式
resultAll.addAll(resultSelect);
} else if (tagType == 1) {
Element resultId = html.getElementById(tagName); // 元素ID方式
resultAll.add(resultId);
} else if (tagType == 2) {
Elements resultClass = html.getElementsByClass(tagName); // ClassName方式
resultAll.addAll(resultClass);
} else if (tagType == 3) {
Elements resultTag = html.getElementsByTag(tagName); // html標簽方式
resultAll.addAll(resultTag);
}
}
}
}
} else {
resultAll = html.getElementsByTag("body");
}
return resultAll;
} catch (IOException e) {
logger.error("", e);
}
return null;
}
示例2: getConnect
import org.jsoup.Connection; //導入方法依賴的package包/類
public static Connection getConnect(String url, Map<String,String> header, Map<String,String> cookie){
Connection con;
// Document doc = null;
url = url.trim();
con = Jsoup.connect(url);
con.ignoreContentType(true);
// if(!url.startsWith("http:/")){
// return null;
// }
if(url.split(":", 2)[0].equals("https")){
con.validateTLSCertificates(false);
}
if(!(header==null||header.isEmpty())){
for(Object key : header.keySet()){
con.header((String) key, header.get(key));
}
}else{
con.header("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
}
if(!(cookie==null||cookie.isEmpty()))
con.cookies(cookie);
// try {
// doc = con.get();
// } catch (IOException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();logger.error("Exception",e);
// }
con.ignoreHttpErrors(true).ignoreContentType(true);
return con;
}
示例3: getConnection
import org.jsoup.Connection; //導入方法依賴的package包/類
protected Connection getConnection(String url) {
Connection connection = Jsoup.connect(url);
Map<String, String> cookies = getCookies();
if (cookies.size() > 0) {
connection.cookies(cookies);
}
return connection;
}
示例4: load
import org.jsoup.Connection; //導入方法依賴的package包/類
/**
* 加載頁麵
*
* @param pageLoadInfo
*
* @return
*/
public static Document load(PageLoadInfo pageLoadInfo) {
if (!UrlUtil.isUrl(pageLoadInfo.getUrl())) {
return null;
}
try {
// 請求設置
Connection conn = Jsoup.connect(pageLoadInfo.getUrl());
if (pageLoadInfo.getParamMap() != null && !pageLoadInfo.getParamMap().isEmpty()) {
conn.data(pageLoadInfo.getParamMap());
}
if (pageLoadInfo.getCookieMap() != null && !pageLoadInfo.getCookieMap().isEmpty()) {
conn.cookies(pageLoadInfo.getCookieMap());
}
if (pageLoadInfo.getHeaderMap()!=null && !pageLoadInfo.getHeaderMap().isEmpty()) {
conn.headers(pageLoadInfo.getHeaderMap());
}
if (pageLoadInfo.getUserAgent()!=null) {
conn.userAgent(pageLoadInfo.getUserAgent());
}
if (pageLoadInfo.getReferrer() != null) {
conn.referrer(pageLoadInfo.getReferrer());
}
conn.timeout(pageLoadInfo.getTimeoutMillis());
// 代理
if (pageLoadInfo.getProxy() != null) {
conn.proxy(pageLoadInfo.getProxy());
}
// 發出請求
Document html = null;
if (pageLoadInfo.getIfPost()) {
html = conn.post();
} else {
html = conn.get();
}
return html;
} catch (IOException e) {
logger.error(e.getMessage(), e);
return null;
}
}
示例5: getDocument
import org.jsoup.Connection; //導入方法依賴的package包/類
public static Document getDocument(String url, boolean loginCoolApk) throws IOException {
if (!url.startsWith("https://") || !url.startsWith("http://"))
url = "http://" + url;
Connection connection = Jsoup.connect(url);
if (loginCoolApk) {
connection.cookies(new UserSave().buildWebRequestCookie());
}
return connection.get();
}
示例6: fetch
import org.jsoup.Connection; //導入方法依賴的package包/類
public Connection.Response fetch(Parameters params) throws IOException {
setProperty("sun.net.http.allowRestrictedHeaders", "true");
setProperty("javax.net.ssl.trustStore", "/etc/ssl/certs/java/cacerts");
int retryCount = 0;
while(true) {
try {
final Connection connection = Jsoup
.connect(params.getUrlToFetch())
.method(params.getMethod())
.validateTLSCertificates(false)
.ignoreHttpErrors(true)
.followRedirects(params.isFollowRedirects())
.ignoreContentType(GLOBAL_CONFIG.isIgnoringContentType())
.userAgent(params.getUserAgent())
.referrer(params.getReferrer())
.proxy(createProxy(params.getProxy()))
.maxBodySize(0)
.timeout(params.getTimeout());
if (!params.getCookie().isEmpty()) {
connection.cookies(params.getCookie());
}
if (!params.getHeaders().isEmpty()) {
connection.headers(params.getCookie());
}
if (!params.getRequestBody().isEmpty()) {
connection.requestBody(params.getRequestBody());
}
System.out.println("\uD83D\uDD3D " + ansi().fg(CYAN).bold().a("fetched page : ").reset() + params.getUrlToFetch());
return connection.execute();
} catch(SocketTimeoutException ste) {
if(retryCount > params.getRetriesOnTimeout()) {
throw ste;
}
System.out.println("\uD83D\uDD50 " + ansi().fg(YELLOW).bold().a("fetch timeout: ").reset() + "SocketRead time out after " + retryCount++ + ". try");
}
}
}