Solved

how to download a webpage including images,applets,..

Posted on 2004-09-15
12
158 Views
Last Modified: 2012-05-05
Hi,

How can I write a routine that will download a web page and store it on my hard disk.  It also has to download all associated objects including Images,Applets, etc ?

for eg:if i type "www.yahoo.com" ,i should download the complete webpage including all.

i have tried with the following code i can not able to get the images

                        URL url=new URL("http://www.kumudam.com");
                        InputStream conn=url.openStream();
              BufferedReader input = new BufferedReader(new InputStreamReader(conn));
                    String line ;
                        byte data[]= new byte[1000];
                        int size = input.read();
                        System.out.println(size);
                        while ((line = input.readLine()) != null)
                  
                            System.out.println(line);
                            input.close();
Thanks in advance
0
Comment
Question by:vihar123
  • 4
  • 3
  • 2
  • +1
12 Comments
 
LVL 92

Accepted Solution

by:
objects earned 250 total points
ID: 12071200
you'll need to parse the html, here's an example showing how to extract all the links.

http://www.javaalmanac.com/egs/javax.swing.text.html/GetLinks.html

You can then download the data pointed to in the link.
0
 
LVL 21

Expert Comment

by:MogalManic
ID: 12071580
objects is right.

When a browser access a page, it loads the page and all of its assocated objects through a series of GETs.  The first get is the HTML of course.  Then the browser parses the HTML and as it encounters a tag that refers to an external resource it issues another GET to retrieve and render the resource.  Your code would have to do something simalar.
0
 
LVL 18

Expert Comment

by:armoghan
ID: 12071997
and when you get the image links as described by the link given by objects,
you can save the images to local file system like

http://forum.java.sun.com/thread.jsp?thread=433352&forum=31&message=1940583

basically you would be looking for
HTML.Attribute.IMG

you will need to find the <APPLET tag as well for downloading applets


0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:vihar123
ID: 12083034
hi objects,

i have seen the same code and tried i am getting javax.swing.text.changedcharsetexception,i cannot able to rectify.

pls help me  :)
0
 
LVL 92

Expert Comment

by:objects
ID: 12089306
doc.putProperties("IgnoreCharacterSet", new Boolean(true));
0
 

Author Comment

by:vihar123
ID: 12224618
hi,
this HTML parser is not working for all websites.pls help me out :)
0
 
LVL 92

Expert Comment

by:objects
ID: 12224634
yes if it not standard html, or uses recent features it will have problems.
0
 

Author Comment

by:vihar123
ID: 12228311
hi objects,
what to do in this case? any idea..
0
 
LVL 92

Expert Comment

by:objects
ID: 12232177
you need to look at a different parser, perhaps a commercial one.
0
 
LVL 18

Assisted Solution

by:armoghan
armoghan earned 250 total points
ID: 12234430
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

An old method to applying the Singleton pattern in your Java code is to check if a static instance, defined in the same class that needs to be instantiated once and only once, is null and then create a new instance; otherwise, the pre-existing insta…
Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.

791 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question