解决方案 »

  1.   

    不知道 python 框架中有没有类似java中的 URLDecoder 和 URLEncoder ,有的话先转过去,拿到后再转回来。
      

  2.   

    好像这个看代码也看不出神了
    #coding=utf-8
    import os,re,time,json,shutil,StringIO,traceback
     url = "http://www.sogou.com/web?query=苹果电脑"
     crawlerProp.setWebsite((url))
      

  3.   

    ?query=苹果电脑
    这个参数别这么直接传中文啊,先编码,然后到java那再解码!
      

  4.   

    "http://www.sogou.com/web?query=苹果电脑"
    把这个url用urlencode编码,或者其他的方式编码之后再传过去。直接传中文,和库实现、本地平台编码方式有关,这个就变得不可控了
      

  5.   

    java是个框架,好像不太好改啊
      

  6.   

    java是个框架,好像不太好改啊什么意思?java啥时候变成框架啦!
      

  7.   

    %E8?%B9%E6??%E7?%B5%E8
    这个是加密之后的呈现结果,有些浏览器会自动加密,有些不会,所以为了统一协调,传递中文参数前统一加密,后台在解密就好了。
      

  8.   

    可以用base64编码后传到java,java再解码出来;
    phyon和java肯定要按指定相同规则进行编码解码的。
      

  9.   

    在url中直接传递中文,必然乱码啊。不管你是否设置了utf-8格式的编码也会乱。你在后台接收query的话,要转一下。一般转码是这样的:1、先得到query的值。 2、 String str = new String(query.getBytes("iso8859-1"),"utf-8");  
      

  10.   


    用了URLdecode就好了
    from urllib import quote
    if __name__ == "__main__":
        all_the_text = readfile("/data/words.txt")
        words = all_the_text.split(",")
        for word in words:
            m = re.match(r'%EF%BB%BF(.*)', quote(word))
            alterword = quote(word)
            print(word)
            if m:
                alterword = m.group(1)
            url = "http://www.sogou.com/web?query="
            print(url+alterword)