A. java連接百度搜索
1,可以用httpconnection或者apache的httpclient,通過「https://www..com/s?wd=要搜索的關鍵字」這個URL,獲取網路搜索的內容。自己解析。
2,如果想從瀏覽器打開頁面,可以用Runtime.getRuntime().exec("瀏覽器.exe 要打開的url");
3,如果自己用jni或者jna封裝一些webkit之類的,通過java調用也可以。
B. 關於java調用url介面方法的問題
對於具體的數據請求方式、請求方式、響應數據格式要看你的介面要求,這是通用代碼:
importjava.io.BufferedReader;
importjava.io.IOException;
importjava.io.InputStreamReader;
importjava.net.HttpURLConnection;
importjava.net.URL;
publicclassTest{
publicstaticvoidmain(String[]args)throwsIOException{
System.out.println(getData());
}
publicstaticStringgetData()throwsIOException{
//創建指定url的url對象,這里的地址是:淘寶商品搜索建議
URLurl=newURL("https://suggest.taobao.com/sug?code=utf-8&q=電腦&callback=cb");
//創建http鏈接對象
HttpURLConnectioncon=(HttpURLConnection)url.openConnection();
//設置請求方式
con.setRequestMethod("POST");
//打開鏈接,上一步和該步驟作用相同,可以省略
con.connect();
//獲取請求返回內容並設置編碼為UTF-8
BufferedReaderreader=newBufferedReader(newInputStreamReader(con.getInputStream(),"UTF-8"));
//將返回數據拼接為字元串
StringBuffersb=newStringBuffer();
//臨時字元串
Stringtemp=null;
//獲取數據
while((temp=reader.readLine())!=null){
sb.append(temp);
}
//關閉流
reader.close();
returnsb.toString();
}
}
結果:
C. 請問java如何獲取當前url路徑
可以通過「 類名.class.getResource("").getPath()」方法實現。
舉例:」String path = XMLS.class.getResource("").getPath()「.
解釋:以上語句就是獲取到XMLS編譯後的絕對專路屬徑(無法獲取到java文件路徑的,因為java運行的都是class文件)。
D. 怎麼用java獲取瀏覽器中url的值,比如自己編寫一個程序,當前瀏覽器顯示為百度,如何獲取url詳細一點
這個頁面的路徑都是自己指定的,那有獲取的
E. java里,如何讓程序訪問指定網頁
訪問第一個頁面,登陸成功了,會返回sessionid,把取得的sessionid通過cookie傳遞到第二次訪問中,瀏覽器就是這么實現的,cookie是包含在http請求中。
URL url = new URL(linkPage1);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
......
//第一次訪問後,獲得session信息,你可以把session_value列印出來,然後根據格式把jsessionid提取出來
//,注意JSESSIONID=XXX都提取出來,帶著JSESSIONID,也許需要用正則表達式
session_value = urlConnection.getHeaderField("Set-Cookie");
String[] sessionId = session_value.split(";");
url = new URL(linkPage2);
urlConnection = (HttpURLConnection) url.openConnection();
//把獲取的JSESSIONID=XXX保存到cookie中,然後連接第二頁面
urlConnection.setRequestProperty("Cookie", sessionId[0])
urlConnection.connect()
F. JAVA類如何打開網頁
JAVA中的類是具備某些共同特徵的實體的集合,它是一種抽象的概念,用程序設計的語言來說,類是一種抽象的數據類型,它是對所具有相同特徵實體的抽象。所謂對象就是真實世界中的實體,對象與實體是一一對應的,也就是說現實世界中每一個實體都是一個對象,對象是一種具體的概念。JAVA類打開網頁有以下方法:
1、java.net.URI uri = new java.net.URI("http://www..com");
java.awt.Desktop.getDesktop().browse(uri);
2、Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler http://www..com");
這兩種方法是可以打開,不過只能在服務端打開,如果有另一台機器訪問我的機器,執行上邊的程序後,也會在我本機顯示的頁面。
3、如果是讓他自動打開可以用robot類模擬滑鼠單擊右鍵雙擊等動作,還可以模擬輸入。
4、如果要在網頁做復雜操作可以用swt做一個瀏覽器,可以控制他執行網站里的腳本,這個比較難點。
G. java如何訪問帶中文路徑的url
可以用二進制,先把中文全部轉換,然後傳值,在伺服器中相應的轉換為10進制
H. 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);
}
}
}
I. java , 瀏覽器輸入url地址,獲取硬碟某個pdf文件。怎麼做 如下圖這種效果。
1. 怎樣迅速地把網頁或鏈接發送給他人?
文件/發送/ 指令可以立即通過電子郵件發送網頁或鏈接。
2. 如何在新窗口中打開鏈接?
1. 在頁面中直接拖放鏈接。
2. 拖放鏈接到地址欄或標簽欄。
3. 按下 Shift 鍵後點擊鏈接。
4. 激活」在新窗口中打開鏈接「功能。
5. 設置滑鼠選項的滑鼠按鍵動作「中鍵單擊」為「打開鏈接」,然後您就可以單擊滑鼠中鍵來打開鏈接。
3. 怎樣打開網頁中的地址字串?
1. 選中地址字串,然後拖放到地址欄或標簽欄。
2. 選中地址字串,然後選擇 文件/新建/所選字元(Ctrl+Shift+T)。
3. 選中地址字串,然後拖放到頁面中的任何地方。
4. 怎樣快速的打開地址?
1. 啟用「一鍵通」功能,並為指定的 URL 設置一個快捷鍵。
2. 啟用「URL 縮寫功能」,然後在地址欄輸入相應的縮寫。
3. 將 URL 添加到收藏夾,以後就能通過收藏夾選擇並打開該URL。
5. 怎樣快速的同時打開若干個 URL?
1. 把這些 URL 保存為一個群組,然後可以打開這個群組。
2. 把這些 URL 添加到收藏夾中的同一個文件夾中,然後您可以通過「打開本層鏈接」來打開。
3. 選中這些文件或鏈接,然後拖放到主窗口或懸浮監視窗。
6. 怎樣快速的關閉一個頁面?
1. 按快捷鍵 F4、Ctrl+F4、Ctrl+W、Ctrl+PageDown。
2. 啟用「單擊圖標關閉標簽」,就可通過單擊窗口標簽的圖標來快速關閉。
3. 啟用滑鼠手勢功能,然後執行手勢 ↑ → (預設)可關閉當前頁。
4. 右鍵點擊標簽,選擇彈出菜單中的 "關閉" 項。
7. 怎樣快速的保存圖片?
1. 設置滑鼠拖放圖片的動作為「保存到收集器」,然後就可以快速地將圖片保存到收集器所指定的路徑中。
2. 把圖片拖動到狀態欄的收集器圖標,此圖片就會自動保存到收集器所指定的路徑中。
8. 怎樣快速的搜索?
1. 在搜索欄鍵入關鍵字後按回車鍵。
2. 把要搜索的關鍵字拖放到搜索欄。
3. 把關鍵字拖放到頁面中任何地方。
4. 設置地址欄轉到按鈕顯示搜索引擎菜單,在地址欄輸入關鍵字,點擊轉到按鈕的搜索引擎下拉菜單。
9. 怎樣快速的切換選擇不同的搜索引擎?
您可以按下 Ctrl 鍵或 Shift 鍵並點擊彈出的搜索欄菜單,實現臨時的切換選擇不同的搜索引擎項,相關細節請參看「搜索引擎」。
10. 怎樣快速的在頁面內搜索某個指定的鏈接?
在 IE 中,如果想尋找一個您所需要的特定鏈接,您必須打開源文件並在其中查找,這樣很麻煩且效果也不好。在 GreenBrowser 中您可以使用 「鏈接列表" 對話框來達到這個目的。請參看「頁內鏈接分析」的相關介紹。
11. 怎樣快速的顯示/隱藏 GreenBrowser?
1. 使用快捷鍵。默認鍵是 Ctrl+`,您可以設置新的快捷鍵。
2. 如果選擇了顯示懸浮監視窗,雙擊懸浮窗。
3. 如果選擇了顯示系統托盤圖標,點擊這個圖標。
12. 怎樣使 GreenBrowser 在運行中佔用更少的內存資源?
當 GreenBrowser 最小化或關閉到系統托盤時,它將佔用最小的物理內存,大約能釋放 80% 內存空間。所以當您不使用 GreenBrowser 時,您可以將它最小化或關閉到系統托盤,最小化後還原也有相同的效果。
13. 怎樣使用地址欄的字串拖放功能?
1. 拖放: 打開拖放的字串
2. Ctrl+拖放: 搜索拖放的字串
3. Shift+拖放: 將拖放的字串存入搜索欄,但不執行搜索
4. Ctrl+Shift+拖放: 在頁面中高亮顯示拖動的關鍵字
14. 怎樣使用搜索欄的字串拖放功能?
1. 拖放: 搜索拖放的字串
2. Ctrl+拖放: 在頁面中查找拖放的字串
3. Shift+拖放: 將拖放的字串存入搜索欄,但不執行搜索
4. Ctrl+Shift+拖放: 在頁面中高亮顯示拖動的關鍵字
15. 怎樣直接打開指向的地址?
有一些 URL 象這樣的鏈接: /jump.asp?/。如果您需要直接打開這個指向的地址,請在點擊該鏈接時按下 Ctrl 鍵 (預設值)。
16. 怎樣快速的改變頁面的下載控制方案?
您可以通過頁面下載控制菜單來改變下載控制方案,您點選菜單項後,頁面將隨之自動刷新,如果您不需要這樣,請在點選菜單項時按下 Ctrl 鍵。
17. 怎樣快速的打開頁面?
1. 禁止或精簡彈出窗口及內容過濾列表。
2. 禁止或精簡狀態欄的顯示內容: 本地 IP 地址、空閑物理內存、網路速率、Modem 速率。
18. 怎樣解除網頁的滑鼠左右鍵限制?
一些網頁鎖定了滑鼠左右鍵的文本選擇和點擊的功能,您可以解除這個限制:
1. 運行腳本插件「解除滑鼠左右鍵限制」或在腳本收集器中運行這個腳本。
2. 禁止頁面下載控制中的 Script,重新載入頁面。
19. 怎樣快速的找到具有相同或相似地址的標簽?
有時候,您打開了很多頁面,要從中尋找出地址相同或相似的標簽就很困難。您可以使用標記/不標記功能,當輸入相似的地址時,您可以修改這個地址字元,GreenBrowser 就能找到相似的地址並用特殊的圖標把它們標記出來。
20. 怎樣快速的關閉一些標簽?
1. 鎖定標簽,點擊「全部關閉」。
2. 如果網頁的地址相同或相似,點擊「全部關閉(相似地址)」。
3. 如果網頁的標題相同或相似,點擊「全部關閉(相似標題)」。
4. 您可以快速關閉在當前頁左、右側的所有頁面。
21. 怎樣禁止顯示 Flash?
1. 添加 *.swf 到頁面內容過濾列表,同時開啟頁面內容過濾功能。
2. 在「頁面下載控制」菜單中不選擇「顯示 Flash(所有窗口)」,這個方法比第一個方法的效率可能更高,但這將禁止所有 IE 內核瀏覽器顯示 Flash。
22. 怎樣使 GreenBrowser 更穩定?
GreenBrowser 支持腳本插件,但某些錯誤或復雜的腳本可能會導致 GreenBrowser 崩潰。建議謹慎運行腳本插件。
23. 怎樣安裝插件?
1. 通過 GreenBrowser 主頁下載插件壓縮包。
2. 將壓縮包解壓到一個新的文件夾下。
3. 點擊 工具擴展工具欄設置擴展工具欄...
4. 點擊 」...「 後選擇插件,然後按下插入按鈕。
5. 如果您把一些插件都放在一個文件夾下,您可以點擊 「導入腳本插件...」 來選擇這個文件夾,然後您就可以一次性導入該文件夾下的所有插件。
24. 怎樣在瀏覽時保護頁面標題信息?
1. 您可以選擇 「禁止在窗口標題欄中顯示網頁標題」。
2. 您可以為頁面標簽分配固定標題,如果您需要將固定標題分配給所有標簽,就在點擊 「確定「 前按住 Shift 鍵。
25. 怎樣快速的刪除地址欄和搜索欄關鍵字條目?
1. 您可以下拉列表並使用 「Delete」 鍵直接刪除條目。
2. GreenBrowser 選項中的刪除選項。
26. 怎樣禁止網頁彈出關於ActiveX認證的對話框?
有兩種方法:
1.使用外部工具 NotTroubleMe 別煩我,將您不想彈出的ActiveX對話框的CLSID添加到 NotTroubleMe 並選中該項。
2.在內容過濾列表中添加規則「*.cab」,並啟用頁面內容過濾器。
27. 怎樣使用GreenBrowser的相對路徑?
如果您想使用GreenBrowser安裝路徑下的目錄或文件,只需要在其路徑前面添加「.」或者「..」,例如: .skin, .Proxy.ini, . esource esource.htm,..Software.
J. Java訪問指定URL並獲取網頁源代碼
1.編寫 類的基本框架,該類僅包括無返回值的main ()方法,該方法從參數中獲取URL,通過輸入緩沖和輸出緩沖將該URL 原碼輸出。
2.編寫useSourceViewer 類,代碼如下:
import java.net.*;
import java.io.*;
public class useSourceViewer
{
public static void main (String[] args)
{
if (args.length > 0)
{
try
{
//讀入URL
URL u = new URL(args[0]);
InputStream in = u.openStream( );
// 為增加性能存儲輸入流
in = new BufferedInputStream(in);
// 將輸入流連接到閱讀器
Reader r = new InputStreamReader(in);
int c;
while ((c = r.read( )) != -1)
{
System.out.print((char) c);
}
Object o = u.getContent( );
System.out.println("I got a " + o.getClass().getName( ));
}
catch (MalformedURLException e)
{
System.err.println(args[0] + " is not a parseable URL");
}
catch (IOException e)
{
System.err.println(e);
}
} // end if
} // end main
} // end SourceViewer}