Hi all! Could anybody be so kind to help me? I should to make a robot, that will fetch some data from amazon.co.jp. It will work under Linux.
This URL is a point of start for me: http://s1.amazon.co.jp/exec/varzea/subst/your-account/downloadable-reports.html There is a class code that downloads page below. The problem is that method.getResponseBodyAsString() returns string, where all Japanese chars replaced by question-mark. How can I fix this problem? ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ import java.io.FileWriter; import java.io.IOException; import org.apache.commons.httpclient.Cookie; import org.apache.commons.httpclient.HostConfiguration; import org.apache.commons.httpclient.HttpConnection; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpState; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.URI; import org.apache.commons.httpclient.protocol.Protocol; import org.apache.commons.httpclient.cookie.CookiePolicy; import org.apache.commons.httpclient.methods.GetMethod; import ru.pp.sabitov.common.HttpResponse; public class Client { private String url = null; private HttpConnection connection = null; private Cookie[] cookies = null; private String proxyHost = null; private int proxyPort = -1; public Client () { public void setProxy ( String host, String port ) { public void setProxy ( String host, int port ) { public HttpResponse openGetHttpConnection ( String url ) throws NullPointerException, HttpException, IOException { HttpResponse result = null; System.out.println ( url ); URI uri = new URI ( url.toCharArray () ); String schema = uri.getScheme (); if ( ( schema == null ) || ( schema.equals ( "" ) ) ) { schema = "http"; } Protocol protocol = Protocol.getProtocol ( schema ); HttpState state = new HttpState (); state.setCookiePolicy ( CookiePolicy.RFC2109 ); if ( cookies != null ) { for ( int idx = 0; idx < cookies.length; idx++ ) { Cookie cookie = cookies [ idx ]; System.out.println ( "Cookie: " + cookie ); state.addCookie ( cookie ); } } String host = uri.getHost (); int port = uri.getPort (); GetMethod method = new GetMethod ( uri.toString () ); method.setFollowRedirects ( true ); HostConfiguration hostConfig = new HostConfiguration(); if ( ( proxyHost != null ) && ( proxyPort != -1 ) ) { hostConfig.setProxy( proxyHost, proxyPort ); } org.apache.commons.httpclient.HttpClient client = new org.apache.commons.httpclient.HttpClient (); client.setHostConfiguration( hostConfig ); client.setState ( state ); client.executeMethod( method ); if ( method.getStatusCode() == HttpStatus.SC_OK ) { cookies = client.getState().getCookies (); FileWriter w = new FileWriter ("123.txt", true); w.write( method.getResponseBodyAsString () ); w.close(); result = new HttpResponse ( method.getResponseBodyAsString () ); } else { System.out.println ( "Unexpected failure: " + method.getStatusLine ().toString () ); } method.releaseConnection (); return result; } } -- ,,,, /'^'\ ( o o ) --oOOO--(_)--OOOo------------------------------------------------ | Andrew A. Sabitov | Email: [EMAIL PROTECTED] | WWW: fir.catalysis.nsk.su/~sabitov | .oooO Еж птица гордая - пока не пнешь, не полетит! | ( ) Oooo. ---\ (----( )------------------------------------------------- \_) ) / (_/ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
