導航:首頁 > 編程語言 > javaurl獲取內容

javaurl獲取內容

發布時間:2022-10-03 01:26:45

java請求一個URL。獲取網站返回的數據。

publicstaticStringSendGET(Stringurl,Stringparam){
Stringresult="";//訪問返回結果
BufferedReaderread=null;//讀取訪問結果

try{
//創建url
URLrealurl=newURL(url+"?"+param);
//打開連接
URLConnectionconnection=realurl.openConnection();
//設置通用的請求屬性
connection.setRequestProperty("accept","*/*");
connection.setRequestProperty("connection","Keep-Alive");
connection.setRequestProperty("user-agent",
"Mozilla/4.0(compatible;MSIE6.0;WindowsNT5.1;SV1)");
//建立連接
connection.connect();
//獲取所有響應頭欄位
Map<String,List<String>>map=connection.getHeaderFields();
//遍歷所有的響應頭欄位,獲取到cookies等
for(Stringkey:map.keySet()){
System.out.println(key+"--->"+map.get(key));
}
//定義BufferedReader輸入流來讀取URL的響應
read=newBufferedReader(newInputStreamReader(
connection.getInputStream(),"UTF-8"));
Stringline;//循環讀取
while((line=read.readLine())!=null){
result+=line;
}
}catch(IOExceptione){
e.printStackTrace();
}finally{
if(read!=null){//關閉流
try{
read.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}

returnresult;
}

㈡ java怎樣獲取url參數

publicstaticMap<String,String>toMap(Stringurl){
Map<String,String>map=null;

if(url!=null&&url.indexOf("&")>-1&&url.indexOf("=")>-1){
map=newHashMap<String,String>();

String[]arrTemp=url.split("&");
for(Stringstr:arrTemp){
String[]qs=str.split("=");
map.put(qs[0],qs[1]);
}
}

returnmap;
}

(Stringurl,Stringname){
returnStringUtils.toMap(url).get(name);
}

Stringqs=getQueryString(url,"action");

㈢ java根據url抓取html頁面內容,怎麼解析chunked 方式

先獲取頁面
String html = getContent(url, Constants.ENCODING_UTF8);
解析頁面 Document doc=Jsoup.parse(html);
然後你獲取相應的標簽String tag =doc.getElementsByTag("title").first().text();
如果標簽很多不一樣你就得判斷了,還有看看有什麼相同的地方吧,我抓取網頁數據的時候最煩的就是格式不一樣的,好多標簽不一樣的,只能判斷,找到共同點,個別的單個處理,

㈣ java獲取URL

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

public class GetLinks {
private String webSource;
private String url;

public GetLinks(String url) throws MalformedURLException, IOException {
this.url = Complete(url);
webSource = getWebCon(this.url);
}

private String getWebCon(String strURL) throws MalformedURLException,
IOException {
StringBuffer sb = new StringBuffer();
java.net.URL url = new java.net.URL(strURL);
BufferedReader in = new BufferedReader(new InputStreamReader(url
.openStream()));
String line;
while ((line = in.readLine()) != null) {
sb.append(line);
}
in.close();
return sb.toString();
}

private String Complete(String link)throws MalformedURLException{
URL url1 = new URL(link);
URL url2 = new URL(link+"/");
String handledUrl = link;
try{
StringBuffer sb1 = new StringBuffer();
BufferedReader in1 = new BufferedReader(new InputStreamReader(url1
.openStream()));
String line1;
while ((line1 = in1.readLine()) != null) {
sb1.append(line1);
}
in1.close();

StringBuffer sb2 = new StringBuffer();
BufferedReader in2 = new BufferedReader(new InputStreamReader(url2
.openStream()));
String line2;
while ((line2 = in2.readLine()) != null) {
sb2.append(line2);
}
in1.close();

if(sb1.toString().equals(sb2.toString())){
handledUrl = link+"/";
}
}catch(Exception e){
handledUrl = link;
}
return handledUrl;

}

/**
* 處理鏈接的相對路徑
* @param link 相對路徑或絕對路徑
* @return 絕對路徑
*/
private String urlHandler(String link) {
if (link == null)
return null;
link = link.trim();

if (link.toLowerCase().startsWith("http://")
|| link.toLowerCase().startsWith("https://")) {
return link;
}
String pare = url.trim();
if (!link.startsWith("/")) {
if (pare.endsWith("/")) {
return pare + link;
}

if (url.lastIndexOf("/") == url.indexOf("//") + 1 || url.lastIndexOf("/") == url.indexOf("//") + 2) {
return pare + "/" + link;
} else {
int lastSeparatorIndex = url.lastIndexOf("/");
return url.substring(0, lastSeparatorIndex + 1) + link;
}
}else{
if (url.lastIndexOf("/") == url.indexOf("//") + 1 || url.lastIndexOf("/") == url.indexOf("//") + 2) {
return pare + link;
}else{
return url.substring(0,url.indexOf("/", url.indexOf("//")+3)) + link;
}
}
}

public List<String> getAnchorTagUrls() {
if (webSource == null) {
System.out.println("沒有網頁源代碼");
return null;
}
ArrayList<String> list = new ArrayList<String>();
int index = 0;
while (index != -1) {
index = webSource.toLowerCase().indexOf("<a ", index);
if (index != -1) {
int end = webSource.indexOf(">", index);
String str = webSource.substring(index, end == -1 ? webSource
.length() : end);
str = str.replaceAll("\\s*=\\s*", "=");
if (str.toLowerCase().matches("^<a.*href\\s*=\\s*[\'|\"]?.*")) {// "^<a\\s+\\w*\\s*href\\s*=\\s*[\'|\"]?.*"
int hrefIndex = str.toLowerCase().indexOf("href=");
int leadingQuotesIndex = -1;
if ((leadingQuotesIndex = str.indexOf("\"", hrefIndex
+ "href=".length())) != -1) { // 形如<a
// href=".....">
int TrailingQuotesIndex = str.indexOf("\"",
leadingQuotesIndex + 1);
TrailingQuotesIndex = TrailingQuotesIndex == -1 ? str
.length() : TrailingQuotesIndex;
str = str.substring(leadingQuotesIndex + 1,
TrailingQuotesIndex);
str = urlHandler(str);
list.add(str);
System.out.println(str);
index += "<a ".length();
continue;
}

if ((leadingQuotesIndex = str.indexOf("\'", hrefIndex
+ "href=".length())) != -1) { // 形如<a
// href='.....'>
int TrailingQuotesIndex = str.indexOf("\'",
leadingQuotesIndex + 1);
TrailingQuotesIndex = TrailingQuotesIndex == -1 ? str
.length() : TrailingQuotesIndex;
str = str.substring(leadingQuotesIndex + 1,
TrailingQuotesIndex);
str = urlHandler(str);
System.out.println(str);
list.add(str);
index += "<a ".length();
continue;
}

int whitespaceIndex = str.indexOf(" ", hrefIndex
+ "href=".length()); // 形如<a href=
// http://www..com >
whitespaceIndex = whitespaceIndex == -1 ? str.length()
: whitespaceIndex;
str = str.substring(hrefIndex + "href=".length(),
whitespaceIndex);
str = urlHandler(str);
list.add(str);
System.out.println(str);

}
index += "<a ".length();
}
}
return list;
}

public static void main(String[] args) throws Exception {
GetLinks gl = new GetLinks("http://www..com");
List<String> list = gl.getAnchorTagUrls();
for(String str:list) {
System.out.println(str);
}
}
}

㈤ Java請求一個URL。獲取網站返回的數據。這個返回數據是些什麼內容

如果你確定訪問是個網頁,那返回的就是這個網頁的HTML頁面代碼,這中代碼都是靠瀏覽器解析執行,然後才變成了我們看到的頁面的樣子

㈥ java怎麼獲取一個url跳轉後頁面的內容

如果是訪問test.html最終轉到talkback.apk,那麼無論是用瀏覽器還是java訪問都會轉至talkback.apk(請求時許可權攔截除外),java只是作為客戶端調用者,請求test.html的響應結果是由伺服器決定的。

㈦ 給你一個url,用java怎獲取url里的屬性請各位大俠幫個忙,最好有代碼

把能找到的參數都付給argsarr數組,將來可以用argsarr[i]進行相應的訪問,方法不錯,太長,參數不容易記憶。
//提取URL中的參數
function getArgs()
{
//定義一個數組,用於存放取出來的字元串參數。
var argsArr = new Object();

//獲取URL中的查詢字元串參數
var query = window.location.search;
query = query.substring(1);

//這里的pairs是一個字元串數組
//name=myname&password=1234&sex=male&address=nanjing
var pairs = query.split("&");

for(var i=0;i<pairs.length;i++)
{
var sign = pairs[i].indexOf("=");

//如果沒有找到=號,那麼就跳過,跳到下一個字元串(下一個循環)。
if(sign == -1)
{
continue;

}

var aKey = pairs[i].substring(0,sign);
var aValue = pairs[i].substring(sign+1);

argsArr[aKey] = aValue;
}

return argsArr;
}

㈧ java怎樣獲取url參數

String url = request.getScheme()+"://"; //請求協議 http 或 https
url+=request.getHeader("host"); // 請求伺服器
url+=request.getRequestURI(); // 工程名
if(request.getQueryString()!=null) //判斷請求參數是否為空
url+="?"+request.getQueryString(); // 參數

㈨ java怎樣獲取url參數

如果是javaweb 項目,那麼非常簡單,直接調用 HttpServletRequest 對象的 .getParamter("參數名稱") 方法即可得到。
如果是普通java 項目:
/**
* 獲取網址的指定參數值
*
* @param url
* 網址
* @param parameter
* 參數名稱
* @author cevencheng
* @return
*/
public static String getParameter(String url, String parameter, String defaultValue) {
try {
final String charset = "utf-8";
url = URLDecoder.decode(url, charset);
if (url.indexOf('?') != -1) {
final String contents = url.substring(url.indexOf('?') + 1);
HashMap<String, String> map = new HashMap<String, String>();
String[] keyValues = contents.split("&");
for (int i = 0; i < keyValues.length; i++) {
String key = keyValues[i].substring(0, keyValues[i].indexOf("="));
String value = keyValues[i].substring(keyValues[i].indexOf("=") + 1);
if (key.equals(parameter)) {
if (value == null || "".equals(value.trim())) {
return defaultValue;
}
return value;
}
map.put(key, value);
}
}
return null;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}

㈩ java怎麼獲取url上的參數

request.getParameter("xxx");

閱讀全文

與javaurl獲取內容相關的資料

熱點內容
冰櫃壓縮機溫度108 瀏覽:718
阿里雲郵smtp伺服器地址 瀏覽:250
解壓館認知理解 瀏覽:239
為什麼使用非官方伺服器會封號 瀏覽:9
佛山加密文檔軟體 瀏覽:813
港式5張梭哈源碼 瀏覽:241
數據中心pdf 瀏覽:524
crf源碼解析 瀏覽:853
伺服器軟體開發是什麼意思 瀏覽:941
刪除彩信android 瀏覽:862
元宵節猜燈謎h5源碼 瀏覽:69
樂培生app怎麼綁定 瀏覽:762
視頻壓縮不清楚怎麼說 瀏覽:525
加好友伺服器繁忙是怎麼回事 瀏覽:381
怎麼解綁app的支付寶賬號 瀏覽:912
ip地址伺服器不可用怎麼解決方法 瀏覽:185
為什麼軟體需要伺服器 瀏覽:64
redis操作命令大全 瀏覽:597
python字元串重復索引 瀏覽:963
為什麼香信新版本連接不上伺服器 瀏覽:51