chaquo / chaquopy

Chaquopy: the Python SDK for Android
https://chaquo.com/chaquopy/
MIT License
844 stars 133 forks source link

package pandas_datareader #268

Closed jesusdfc closed 4 years ago

jesusdfc commented 4 years ago

When I include the package pip { install "pandas-datareader" }

, there are 2 background tasks that get stuck and do not finish. image

I have also tried with install "pandas_datareader" and it works, but when I try to get some data, for example:

df = web.DataReader('AMD', data_source='yahoo',start='2015-01-01',end='2020-03-21')

The program closes. Is it my error? I have tried with jupyter notebook and it doesn't return any error.

Thanks.

mhsmith commented 4 years ago

When your program closes it'll probably generate an error in the Logcat. Please have a look at that, and if you still can't understand the problem, post the error here.

mhsmith commented 4 years ago

If your error involves accessing the internet, make sure you've added the INTERNET permission as described here.

jesusdfc commented 4 years ago

I have included the command but it still gives me the error image

"Failed to establish a new connection: [Errno 7] No address associated with hostname" Maybe its due to the pandas_datareader? Have someone work with it? Thank u.

jesusdfc commented 4 years ago

image I think the problem is that it cant install the pandas-datareader package. Am i doing something wrong? thank u in advance.

jesusdfc commented 4 years ago

I have tried with other packages and still get the same error.. it can't install any package. I can access to internet with the browser and i have include the internet permision line..

mhsmith commented 4 years ago

Failed to establish a new connection: [Errno 7] No address associated with hostname

Is this error happening while building the app or while running it? Either way, please post the entire error along with its surrounding context.

it can't install any package

Previously you said "I have also tried with install "pandas_datareader" and it works". What's changed?

jesusdfc commented 4 years ago

About the second error, it was my bad, i missspelled the first time but after spelling it correctly I got into the same situation. I wasn't paying attention to the logcat or the build window. The application open's correctly, but when I try to call the functions inside my python script, it returns error as the python packages aren't installed. The result is in the photo I attached last message. The build window stops at "collecting pandas-datareader". This happens for every package, its not only the pandas-datareader, I have delete that line and it happens the same for the next package "scipy". The first error u mentioned I think its because the required packaged is not installed.

The errors im having in the logcat are "E/netmgr: Failed to open QEMU pipe 'qemud:network': Invalid argument", " E/wifi_forwarder: RemoteConnection failed to initialize: RemoteConnection failed to open pipe", "E/ClipboardService: Denying clipboard access to com.android.chrome, application is not in focus neither is a system service for user 0" "E/WifiNative: Could not get Iface object for interface null" "E/BluetoothAdapter: Bluetooth binder is null"

2020-04-21 10:46:32.037 8272-8369/? E/Bugle: RcsUtils. Error getting default configuration value for fallback setting 2020-04-21 10:46:32.039 8272-8369/? E/Bugle: snp: Jibe SDK Service not available. Is the Jibe SDK service running? Did you call connect() and wait for the notification before calling an API function? at snl.b(SourceFile:73) at com.google.android.rcs.client.profile.RcsProfileService.getRcsConfig(SourceFile:54) at gnz.a(SourceFile:3) at dbo.getAppSettings(SourceFile:1606) at com.google.android.apps.messaging.shared.analytics.RecurringTelemetryUploaderAction.doBackgroundWork(SourceFile:264) at dyl.a(SourceFile:3) at dxy.run(SourceFile:18) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.lang.Thread.run(Thread.java:919)

Thanks in advance.

mhsmith commented 4 years ago

The first error u mentioned I think its because the required packaged is not installed.

Do you mean the "Failed to establish a new connection" error? Where is that appearing, and what is the context?

The result is in the photo I attached last message. The build window stops at "collecting pandas-datareader". This happens for every package

So when you've built your app before, have you only managed to do that by disabling all the pip packages?

There might be something wrong with your Python installation. Please try installing the newest version from https://python.org.

jesusdfc commented 4 years ago

Do you mean the "Failed to establish a new connection" error? Where is that appearing, and what is the context?

Well, this error comes from calling the line "df = web.DataReader('AMD', data_source='yahoo',start='2015-01-01',end='2020-03-21') in my python script, but I think it was because I didn't have the required package, so if I manage to install the pandas_datareader I think I won't be having this error anymore.

So when you've built your app before, have you only managed to do that by disabling all the pip packages?

Yes, but it gives me this warning "WARNING: Compatible side by side NDK version was not found. Default is 20.0.5594570. Compatible side by side NDK version was not found. Default is 20.0.5594570. Unable to strip the following libraries, packaging them as they are: libchaquopy_java.so, libchaquopy_java.so, libcrypto_chaquopy.so, libcrypto_chaquopy.so, libpython3.8.so, libpython3.8.so, libsqlite3_chaquopy.so, libsqlite3_chaquopy.so, libssl_chaquopy.so, libssl_chaquopy.so" In your guide you told that it was harmless, so maybe its because of the python version.. but I have a new one.. image

There might be something wrong with your Python installation. Please try installing the newest version from https://python.org.

I have the 3.8.2 version of Python.

mhsmith commented 4 years ago

Do you mean the "Failed to establish a new connection" error? Where is that appearing, and what is the context?

Well, this error comes from calling the line "df = web.DataReader('AMD', data_source='yahoo',start='2015-01-01',end='2020-03-21') in my python script, but I think it was because I didn't have the required package,

If you hadn't installed the package, then it wouldn't even have got as far as trying to access the internet. Please post the full message along with any other Logcat messages which come from your app.

jesusdfc commented 4 years ago

If you hadn't installed the package, then it wouldn't even have got as far as trying to access the internet. Please post the full message along with its context.

You are true, my code start with this lines: image

If I dont include the "install packages" line, I get: Caused by: com.chaquo.python.PyException: ModuleNotFoundError: No module named 'requests'

If I include the code, it get stuck at "Collecting first_package_name" . Is there some kind of permission I have to give in the build.gradle to install packages? I have the Python version 3.8.2..

I intentionally changed the path of the python.exe folder to an unexistent one, and It get stucks at "collecting requests.." maybe it can't reach the python.exe and thats why It gets stuck. image

Even if i delete the python folder.. It get stucks in the collect msg image

mhsmith commented 4 years ago

I intentionally changed the path of the python.exe folder to an unexistent one, and It get stucks at "collecting requests.."

OK, but does changing the path actually change the behaviour? Or does it get stuck whether you change the path or not?

Only the last buildPython setting will take effect, and if you have Python installed in the default way, you don't need to use the setting at all.

It's obviously managing to run Python, otherwise it wouldn't even have got as far as "Collecting...". However, in case there's something wrong with your Python 3.8 installation, you could try installing Python 3.7 from python.org, and then adding buildPython "py -3.7".

Other ideas:

jesusdfc commented 4 years ago

Okey, I have changed two things and now its working.

1st one, I realized that the python 3.8.2 version was 32-bit, and my os is 64-bit. Second one, I changed to python 3.7.0 and now it's working fine.

Thank you very much.