连接者或chaquo python请求尽管互联网已连接

2024-09-29 19:32:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我的脚本python和android studio有一个ConnectionError问题,尽管互联网已经连接,而且这个脚本只在原生python中工作,没有错误

---------------脚本testpy------------

import json , sys , hashlib , os , time , marshal, getpass

from importlib import reload

reload(sys)

user = ''
pass = ''


def get(data):

        r = requests.get('https://api.facebook.com/restserver.php',params=data)
        a = json.loads(r.text)
        print (a['access_token'])
        print ( 'Welcome')
        exit()
    except KeyError:
        print ( 'User or password incorrect')
    except requests.exceptions.ConnectionError:
        print ( 'Error connection ')

def access():
    API_SECRET = '62f8ce9f74b12f84c123cc23437a4a32';data = {"api_key":"882a8490361da98702bf97a021ddc14d","credentials_type":"password","email":user,"format":"JSON", "generate_machine_id":"1","generate_session_cookies":"1","locale":"en_US","method":"auth.login","password":pass,"return_ssl_resources":"0","v":"1.0"};sig = 'api_key=882a8490361da98702bf97a021ddc14dcredentials_type=passwordemail='+id+'format=JSONgenerate_machine_id=1generate_session_cookies=1locale=en_USmethod=auth.loginpassword='+pass+'return_ssl_resources=0v=1.0'+API_SECRET
    x = hashlib.new('md5')
    x.update(sig.encode('utf-8'))

    data.update({'sig':x.hexdigest()})
    get(data)

---------------java类------------------

public class MainActivity extends AppCompatActivity {

    TextView txtSignIn;
    EditText inputUser,inputPass;
    PyObject pyO;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        txtSignIn = findViewById(R.id.txtSignIn);
        inputUser = findViewById(R.id.inputUser);
        inputPass = findViewById(R.id.inputPass);



        if (!Python.isStarted()) {
            Python.start(new AndroidPlatform(this));
        }

        Python python = Python.getInstance();

        pyO = python.getModule("testpy");

        txtSignIn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                pyO.put("user", inputUser.getText().toString());
                pyO.put("pass", inputPass.getText().toString());

                pyO.callAttr("access");

            }
        });

    }
}

Tags: 脚本apiiddatagetaccesspasspassword

热门问题