當前位置:首頁 » 編程語言 » java下載網頁

java下載網頁

發布時間: 2022-05-13 18:45:56

❶ 設計一個java程序,下載由URL指定的網頁的源代碼,找出其中所有的超鏈接。

importjava.awt.BorderLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.io.BufferedReader;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.InputStreamReader;
importjava.net.HttpURLConnection;
importjava.net.MalformedURLException;
importjava.net.URL;
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;

importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JPanel;
importjavax.swing.JScrollPane;
importjavax.swing.JTextArea;
importjavax.swing.JTextField;

{
privateJTextFielrlInput;
privateJTextAreaviewArea;

publicstaticvoidmain(String[]args){
newHttpViewer();
}

publicHttpViewer(){
this.setTitle("HttpViewer");
this.setSize(800,600);
this.setResizable(false);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
initPanel();
initAction();
this.setVisible(true);
}

//這個方法用來設置窗口布局
privatevoidinitPanel(){
JPanelnorthPanel=newJPanel();
JLabelurlInputLabel=newJLabel("URL:");
urlInput=newJTextField(60);
northPanel.add(urlInputLabel);
northPanel.add(urlInput);
this.add(northPanel,BorderLayout.NORTH);

JPanelcenterPanel=newJPanel();
viewArea=newJTextArea(27,60);
centerPanel.add(newJScrollPane(viewArea));
this.add(centerPanel);
}

//這個方法用來設置事件
privatevoidinitAction(){
urlInput.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
Stringtext=urlInput.getText();
if(text==null||text.length()==0){
viewArea.setText("您沒有輸入URL");
return;
}
try{
URLurl=newURL(text);
Stringcontext=getContent(url);
if(context!=null){
searchFromText(context);
}
}catch(MalformedURLExceptione1){
viewArea.setText("您輸入的URL不合法:"+text);
}
}
});
}

privateStringgetContent(URLurl){
StringBufferbuilder=newStringBuffer();

intresponseCode=-1;
HttpURLConnectioncon=null;
try{
con=(HttpURLConnection)url.openConnection();
con.setRequestProperty("User-Agent",
"Mozilla/4.0(compatible;MSIE5.0;WindowsNT;DigExt)");//IE代理進行下載
con.setConnectTimeout(60000);
con.setReadTimeout(60000);

//獲得網頁返回信息碼
responseCode=con.getResponseCode();

if(responseCode==-1){
viewArea.setText("連接失敗:"+url.toString());
returnnull;
}

if(responseCode>=400){
viewArea.setText("請求失敗,錯誤碼:"+responseCode);
returnnull;
}

InputStreamis=con.getInputStream();
InputStreamReaderisr=newInputStreamReader(is);
BufferedReaderbr=newBufferedReader(isr);

Stringstr=null;
while((str=br.readLine())!=null)
builder.append(str);
is.close();
}catch(IOExceptione){
e.printStackTrace();
viewArea.setText("IOException:"+url.toString());
}finally{
con.disconnect();
}
returnbuilder.toString();
}

privatevoidsearchFromText(Stringcontext){
viewArea.setText("查找URL中: ");
Patternpattern=Pattern.compile("<a([^>]+)*>(.*?)</a>");
Matchermatcher=pattern.matcher(context);
while(matcher.find()){
for(Stringprop:matcher.group(1).split("")){
intindexOf=prop.indexOf('=');
if(indexOf>0){
if(prop.substring(0,indexOf).equals("href")){
Stringurl2=prop.substring(indexOf+2,prop.length()-1);
viewArea.append(url2+" ");
}
}
}
}
}

}

❷ JAVA編程 如何將下載的網頁另存為到本地電腦上

Stream resStream = wc.OpenRead(PageUrl);
StreamReader sr = new StreamReader(resStream,System.Text.Encoding.Default);
ContentHtml.Text = sr.ReadToEnd();
resStream.Close();

❸ 去哪裡下載java系統的前端頁面

Java文件下載,提供前端頁面下載、HttpClient介面下載 學習Java的文件上傳/下載需要先明白一下幾點: 1、下載的資源,有兩種: 1)、本地文件:即項目運行時可訪問的文件目錄

❹ java在哪下載比較好

可以到sun的官方網站http://www.java.com/zh_CN/下載jre,只用於運行Java程序
如果你是開發人員,可以到http://www.oracle.com/technetwork/java/javase/downloads/index.html下載最新版的jdk,網頁是英文的,可以用Google翻譯或者bing翻譯

❺ 在java.com無法進入「所有java下載」頁面怎麼辦

可能是你點錯了。換個瀏覽器可以試試

❻ java如何實現超鏈接下載

java實現超鏈接下載方法如下:

response.setHeader("Content-disposition","attachment;filename="下載的文件名字);

備註:讓response調用setheader方法添加下載的頭給客戶的瀏覽器,瀏覽器收到該頭後就會打開相應的下載對話框。

❼ java代碼實現網頁下載

看你的意思,我覺得你可以去網上查查java網路爬蟲的實現,就是自動抓取網頁內容,並保存
http://blog.csdn.net/binyao02123202/article/details/5725396這里有個鏈接你可以參考下

❽ java中如何實現網頁以Excel的形式下載的功能

兩種方式:1)將你的網頁報表用poi或jxl,轉化為excel格式,然後通過servlet的流輸出 2)使用現有的報表工具實現,我用finereport,其他的你也可以去Google搜下。

❾ 用java讀取網頁內容從並下載此網頁

URL url=new URL("http://www..com");//取得資源對象
URLConnection uc=url.openConnection();//生成連接對象
uc.setDoOutput(true);
uc.connect(); //發出連接
String temp;
final StringBuffer sb = new StringBuffer();
final BufferedReader in = new BufferedReader(new InputStreamReader(
url.openStream(),"gb2312"));
while ((temp = in.readLine()) != null) {
sb.append("\n");
sb.append(temp);
}
in.close();
System.out.println(sb);

❿ 使用java的io流下載了一個網頁,但是打開時出現亂碼,求助!

你用java的IO讀寫的時候,記得設置參數裡面的編碼為下載網頁的編碼,要一致

熱點內容
瑞虎三都有哪些配置 發布:2025-05-11 05:05:08 瀏覽:949
mc非正版伺服器怎麼做 發布:2025-05-11 05:04:54 瀏覽:307
安卓手機九宮格忘記密碼怎麼解 發布:2025-05-11 05:00:30 瀏覽:594
安卓手機拼多多怎麼解綁銀行卡 發布:2025-05-11 05:00:25 瀏覽:685
校園網可以搭建伺服器地址 發布:2025-05-11 04:54:40 瀏覽:785
noip演算法 發布:2025-05-11 04:53:51 瀏覽:50
有什麼我的世界伺服器啟動器 發布:2025-05-11 04:50:41 瀏覽:296
寫shell腳本 發布:2025-05-11 04:37:41 瀏覽:935
電腦伺服器打開有什麼用 發布:2025-05-11 04:36:49 瀏覽:98
sqlserver2008查詢時間 發布:2025-05-11 04:15:28 瀏覽:386