• python embedded in java example


    package com.jd.cis;
    import java.io.IOException;

    import javax.script.ScriptEngineManager;

    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.ResponseHandler;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.impl.client.BasicResponseHandler;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.python.util.PythonInterpreter;
    public class UrlFetch {

        /**
         * @param args
         * @throws IOException
         * @throws ClientProtocolException
         */
        public static void main(String[] args) throws ClientProtocolException, IOException {
            // TODO Auto-generated method stub
    //        HttpClient httpclient = new DefaultHttpClient();
    //        try {
    //            String url="";
    //            url="http://www.yuncheng.com/searchcate.aspx?page=4&cate=%E5%9B%BE%E4%B9%A6&subcate=%E5%8E%9F%E5%88%9B%E6%96%87%E5%AD%A6&level3=%E7%8E%84%E5%B9%BB&level4=%E4%B8%9C%E6%96%B9%E7%8E%84%E5%B9%BB#hd";
    //            HttpGet httpget = new HttpGet(url);
    //            HttpClientParams.setCookiePolicy(httpclient.getParams(), CookiePolicy.BROWSER_COMPATIBILITY);
    //            System.out.println("executing request " + httpget.getURI());
    //
    //            // Create a response handler
    //            ResponseHandler<String> responseHandler = new BasicResponseHandler();
    //            String responseBody = httpclient.execute(httpget, responseHandler);
    //            System.out.println("----------------------------------------");
    //            System.out.println(responseBody);
    //            System.out.println("----------------------------------------");
    //
    //        } finally {
    //            // When HttpClient instance is no longer needed,
    //            // shut down the connection manager to ensure
    //            // immediate deallocation of all system resources
    //            httpclient.getConnectionManager().shutdown();
    //        }
           
           
            PythonInterpreter interpreter = new PythonInterpreter();
            String code="";
            code="url='http://www.yuncheng.com/searchcate.aspx?page=4&cate=%E5%9B%BE%E4%B9%A6&subcate=%E5%8E%9F%E5%88%9B%E6%96%87%E5%AD%A6&level3=%E7%8E%84%E5%B9%BB&level4=%E4%B8%9C%E6%96%B9%E7%8E%84%E5%B9%BB#hd'\nimport urllib2\nfor i in xrange(2,30):\n    print i\n    html=urllib2.urlopen(url).read()\n    f=open('c:/%s.txt'%i,'w')\n    f.write(html)\n    f.close()\n";
            interpreter.exec(code);
           
        }

    }

  • 相关阅读:
    250 浅拷贝Object.assign(target, ...sources),深拷贝
    249 递归:概念,利用递归求1~n的阶乘,利用递归求斐波那契数列,利用递归遍历数据
    248 闭包:概念,作用,案例,思考题案例,chrome 中调试闭包
    247 高阶函数 之 函数可以作为参数传递
    246 JavaScript严格模式
    245 改变函数内部 this 指向:call,apply,bind,call、apply、bind 三者的异同
    244 函数内部的this指向:6种
    243 函数:函数的3种定义方式,函数的6种调用方式
    242 Object.defineProperty
    241 获取对象的属性名:Object.keys(对象)
  • 原文地址:https://www.cnblogs.com/lexus/p/2374585.html
Copyright © 2020-2023  润新知