Code Monkey home page Code Monkey logo

gplaydl's People

Contributors

dependabot[bot] avatar rehmatworks avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

gplaydl's Issues

License?

Respected author, please add a license! I suggest MIT License

gplaydl fails to download any of my paid apps (that I've tried)

OK, so for starters, i'm pretty sure I have over 100 paid apps, and I don't have time to try to download them all with gplaydl. So far i've tried a handful, and the error I get every time is:

Attempting to download
Download failed: "Can't install, please try again later".

That is pretty much how it looks on my screen. It's not a network issue on my end, mobile data/WiFi are reliable for me. Furthermore, I've tried with free apps, they download fine. But it seems that as soon as I try to download an app I've bought, I get the above message.

I can download my paid apps from Play Store just fine too, but it oftentimes sends me pesky split APKs, which I don't want.

When entering the commands, I'm not using any advanced switches like changing device, excluding split APKs, or excluding obb expansion files.

The example paid game I'd like to download has the package name:

kemco.hitpoint.armdgolempremium (Premium RPG Armed Emeth is the app's published name). I just bought this game yesterday afternoon.

Default shared/anonymous configuration without using own Google account

Currently using this tool require to supply email&password for google account, this issue is about avoiding it by supporting Anonymous mode that use shared account, see for example other projects that implement this:
gplaycli: https://github.com/matlink/gplaycli

By default, gplaycli fetches a token from a token dispenser server located at https://matlink.fr/token/ to login in Google Play.

AuroraStore app: https://gitlab.com/AuroraOSS/AuroraStore

Anonymous accounts — You can log in and download with anonymous accounts so you don't have to use your own account

YalpStore app: https://github.com/yeriomin/YalpStore

By default Yalp Store connects to Google services using a built-in account, so you do not have to own a Google account to use it

BadAuthentication

Hi
When I want to use gplaydl configure command to configure initial setup, this error has been show to me:

'server says: BadAuthentication'

I use app password for Gmail and I'm pretty sure I typed it correctly!

How to create device profile from a real device

First, thank you for your amazing project!

I have a given device, And i want to create device.properties entry for it.
What is the most simple way to do so?
Is there any script that can do that?
Thanks!

Automatically fetch token

It would be great to be able to use gplaydl without a google account, which can be achieved by using a token dispenser server. An example of this is matlink/gplaycli, which is also written in Python.

Option to skeep download configs

With main apk also downloaded apk configs, for example config.arm64_8a.apk, config.xxxhdpi.apk and etc.
It's possible skiped on gplaydl?

[ERROR] Can't install cffi==1.14.0

D:\Downloader APK\gplaydl>pip install --upgrade --force-reinstall gplaydl==1.3.5
Collecting gplaydl==1.3.5
  Using cached gplaydl-1.3.5.tar.gz (3.8 kB)
  Preparing metadata (setup.py) ... done
Collecting certifi==2020.4.5.1 (from gplaydl==1.3.5)
  Using cached certifi-2020.4.5.1-py2.py3-none-any.whl (157 kB)
Collecting cffi==1.14.0 (from gplaydl==1.3.5)
  Using cached cffi-1.14.0.tar.gz (463 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [20 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "C:\Users\fazep\AppData\Local\Temp\pip-install-gnytea0a\cffi_16a75588f9684082a4d873fd6b4ae30e\setup.py", line 127, in <module>
          if sys.platform == 'win32' and uses_msvc():
        File "C:\Users\fazep\AppData\Local\Temp\pip-install-gnytea0a\cffi_16a75588f9684082a4d873fd6b4ae30e\setup.py", line 105, in uses_msvc
          return config.try_compile('#ifndef _MSC_VER\n#error "not MSVC"\n#endif')
        File "C:\Python310\lib\distutils\command\config.py", line 225, in try_compile
          self._compile(body, headers, include_dirs, lang)
        File "C:\Python310\lib\distutils\command\config.py", line 132, in _compile
          self.compiler.compile([src], include_dirs=include_dirs)
        File "C:\Python310\lib\distutils\_msvccompiler.py", line 323, in compile
          self.initialize()
        File "C:\Python310\lib\distutils\_msvccompiler.py", line 220, in initialize
          vc_env = _get_vc_env(plat_spec)
        File "C:\Python310\lib\site-packages\setuptools\msvc.py", line 316, in msvc14_get_vc_env
          return _msvc14_get_vc_env(plat_spec)
        File "C:\Python310\lib\site-packages\setuptools\msvc.py", line 270, in _msvc14_get_vc_env
          raise distutils.errors.DistutilsPlatformError(
      distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

Security check is needed DisplayUnlockCaptcha

Hello there!

I'm getting the following error message when I try to download an app from the Google Play Store:

Security check is needed, try to visit https://accounts.google.com/b/0/DisplayUnlockCaptcha to unlock, or setup an app-specific password

I tried the following:

  • account password without MFA
  • account password without MFA and "unsecure" connection enabled (or however that is called)
  • app-specific password (with MFA)

error: command '/usr/bin/gcc' failed with exit code 1

$ pip3 install --upgrade --force-reinstall gplaydl
Defaulting to user installation because normal site-packages is not writeable
Collecting gplaydl
  Downloading gplaydl-1.3.5.tar.gz (3.8 kB)
  Preparing metadata (setup.py) ... done
Collecting certifi==2020.4.5.1
  Downloading certifi-2020.4.5.1-py2.py3-none-any.whl (157 kB)
     |████████████████████████████████| 157 kB 3.2 MB/s            
Collecting cffi==1.14.0
  Downloading cffi-1.14.0.tar.gz (463 kB)
     |████████████████████████████████| 463 kB 7.1 MB/s            
  Preparing metadata (setup.py) ... done
Collecting chardet==3.0.4
  Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
     |████████████████████████████████| 133 kB 6.4 MB/s            
Collecting cryptography==2.9
  Downloading cryptography-2.9-cp35-abi3-manylinux2010_x86_64.whl (2.7 MB)
     |████████████████████████████████| 2.7 MB 7.2 MB/s            
Collecting decorator==4.4.2
  Downloading decorator-4.4.2-py2.py3-none-any.whl (9.2 kB)
Collecting gpapidl==1.0.2
  Downloading gpapidl-1.0.2.tar.gz (91 kB)
     |████████████████████████████████| 91 kB 6.4 MB/s             
  Preparing metadata (setup.py) ... done
Collecting idna==2.9
  Downloading idna-2.9-py2.py3-none-any.whl (58 kB)
     |████████████████████████████████| 58 kB 4.5 MB/s            
Collecting protobuf==3.14.0
  Downloading protobuf-3.14.0-py2.py3-none-any.whl (173 kB)
     |████████████████████████████████| 173 kB 8.6 MB/s            
Collecting pycparser==2.20
  Downloading pycparser-2.20-py2.py3-none-any.whl (112 kB)
     |████████████████████████████████| 112 kB 7.0 MB/s            
Collecting requests==2.23.0
  Downloading requests-2.23.0-py2.py3-none-any.whl (58 kB)
     |████████████████████████████████| 58 kB 3.3 MB/s            
Collecting six==1.14.0
  Downloading six-1.14.0-py2.py3-none-any.whl (10 kB)
Collecting termcolor==1.1.0
  Downloading termcolor-1.1.0.tar.gz (3.9 kB)
  Preparing metadata (setup.py) ... done
Collecting urllib3==1.25.8
  Downloading urllib3-1.25.8-py2.py3-none-any.whl (125 kB)
     |████████████████████████████████| 125 kB 6.7 MB/s            
Collecting validators==0.14.3
  Downloading validators-0.14.3.tar.gz (25 kB)
  Preparing metadata (setup.py) ... done
WARNING: The candidate selected for download or install is a yanked version: 'validators' candidate (version 0.14.3 at https://files.pythonhosted.org/packages/9b/15/f6bab21c3b54ae2025d886890831ebe790e59b57671b8fb96073cb84a5ed/validators-0.14.3.tar.gz#sha256=6a0d9502219aee486f1ee12d8a9635e4a56f3dbcfa204b4e0de3a038ae35f34f (from https://pypi.org/simple/validators/))
Reason for being yanked: Missing python_requires in setup.py
Using legacy 'setup.py install' for gplaydl, since package 'wheel' is not installed.
Using legacy 'setup.py install' for cffi, since package 'wheel' is not installed.
Using legacy 'setup.py install' for gpapidl, since package 'wheel' is not installed.
Using legacy 'setup.py install' for termcolor, since package 'wheel' is not installed.
Using legacy 'setup.py install' for validators, since package 'wheel' is not installed.
Installing collected packages: pycparser, urllib3, six, idna, chardet, cffi, certifi, requests, protobuf, decorator, cryptography, validators, termcolor, gpapidl, gplaydl
  Attempting uninstall: urllib3
    Found existing installation: urllib3 1.26.7
    Uninstalling urllib3-1.26.7:
      Successfully uninstalled urllib3-1.26.7
  Attempting uninstall: six
    Found existing installation: six 1.16.0
    Uninstalling six-1.16.0:
      Successfully uninstalled six-1.16.0
  Attempting uninstall: idna
    Found existing installation: idna 3.3
    Uninstalling idna-3.3:
      Successfully uninstalled idna-3.3
  WARNING: The script chardetect is installed in '/home/heath/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
    Running setup.py install for cffi ... error
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-uj2du9cm/cffi_62adf2a3598b4cf290e0cda58ae6ef0a/setup.py'"'"'; __file__='"'"'/tmp/pip-install-uj2du9cm/cffi_62adf2a3598b4cf290e0cda58ae6ef0a/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-kjouduu8/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/heath/.local/include/python3.10/cffi
         cwd: /tmp/pip-install-uj2du9cm/cffi_62adf2a3598b4cf290e0cda58ae6ef0a/
    Complete output (56 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.10
    creating build/lib.linux-x86_64-3.10/cffi
    copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/model.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/commontypes.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/error.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/cparser.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/ffiplatform.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/pkgconfig.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/vengine_gen.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/api.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/lock.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/__init__.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/verifier.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/recompiler.py -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/_cffi_include.h -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/parse_c_type.h -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/_embedding.h -> build/lib.linux-x86_64-3.10/cffi
    copying cffi/_cffi_errors.h -> build/lib.linux-x86_64-3.10/cffi
    running build_ext
    building '_cffi_backend' extension
    creating build/temp.linux-x86_64-3.10
    creating build/temp.linux-x86_64-3.10/c
    gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fPIC -DUSE__THREAD -DHAVE_SYNC_SYNCHRONIZE -I/usr/include/python3.10 -c c/_cffi_backend.c -o build/temp.linux-x86_64-3.10/c/_cffi_backend.o
    c/_cffi_backend.c: In function ‘ctypedescr_dealloc’:
    c/_cffi_backend.c:407:23: error: lvalue required as left operand of assignment
      407 |         Py_REFCNT(ct) = 43;
          |                       ^
    c/_cffi_backend.c:410:23: error: lvalue required as left operand of assignment
      410 |         Py_REFCNT(ct) = 0;
          |                       ^
    c/_cffi_backend.c: In function ‘prepare_callback_info_tuple’:
    c/_cffi_backend.c:6185:5: warning: ‘PyEval_InitThreads’ is deprecated [-Wdeprecated-declarations]
     6185 |     PyEval_InitThreads();
          |     ^~~~~~~~~~~~~~~~~~
    In file included from /usr/include/python3.10/Python.h:130,
                     from c/_cffi_backend.c:2:
    /usr/include/python3.10/ceval.h:122:37: note: declared here
      122 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
          |                                     ^~~~~~~~~~~~~~~~~~
    c/_cffi_backend.c: In function ‘b_callback’:
    c/_cffi_backend.c:6245:5: warning: ‘ffi_prep_closure’ is deprecated: use ffi_prep_closure_loc instead [-Wdeprecated-declarations]
     6245 |     if (ffi_prep_closure(closure, &cif_descr->cif,
          |     ^~
    In file included from c/_cffi_backend.c:15:
    /usr/include/ffi.h:347:1: note: declared here
      347 | ffi_prep_closure (ffi_closure*,
          | ^~~~~~~~~~~~~~~~
    error: command '/usr/bin/gcc' failed with exit code 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-uj2du9cm/cffi_62adf2a3598b4cf290e0cda58ae6ef0a/setup.py'"'"'; __file__='"'"'/tmp/pip-install-uj2du9cm/cffi_62adf2a3598b4cf290e0cda58ae6ef0a/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-kjouduu8/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/heath/.local/include/python3.10/cffi Check the logs for full command output.

Fetch split apk languages

I've tried downloading a split apk, but I couldn't get any language file to download. Do you know how to force it to download them?

RequestError: Error retrieving information from server. DF-DFERH-01

import re
import io

import click
from gpapidl.googleplay import GooglePlayAPI
from dotenv import dotenv_values


dictfilter = lambda fun, _dict: dict(filter(lambda x: fun(x[1]) if fun else x[1], _dict.items()))
dictfilterkey = lambda fun, _dict: dict(filter(lambda x: fun(x[0]) if fun else x[0], _dict.items()))
dictmap = lambda fun, _dict: dict(map(lambda x: (x[0], fun(x[1])), _dict.items()))
dictmapkey = lambda fun, _dict: dict(map(lambda x: (fun(x[0]), x[1]), _dict.items()))

def sizeof_fmt(num):
	num = float(num)
	for x in ['bytes','KB','MB','GB','TB']:
		if num < 1024.0:
			return "%3.1f%s" % (num, x)
		num /= 1024.0

def download_package(packagename_or_url, output=None, country="us"):
	""" download a package from the Google Play Store """

	# Parse arguments
	if re.fullmatch(r"([A-Za-z]{1}[A-Za-z\d_]*\.)+[A-Za-z][A-Za-z\d_]*", packagename_or_url):
		packagename = packagename_or_url
	elif re.match(r".*\?id=([A-Za-z]{1}[A-Za-z\d_]*\.)+[A-Za-z][A-Za-z\d_]*", packagename_or_url):
		packagename = re.match(r".*\?id=(([A-Za-z]{1}[A-Za-z\d_]*\.)+[A-Za-z][A-Za-z\d_]*)", packagename_or_url)[1]
	else:
		exit("Wrong APPID or URL.")
	if country not in COUNTRY_CODES.keys():
		exit("Wrong country code.")

	# Read config from .env
	config = dictmap(lambda v: v or None, dotenv_values(".env"))
	proxies_config = dictfilterkey(lambda k: k in ["HTTP_PROXY", "HTTPS_PROXY"], dictfilter(None, config))
	proxies_config = dictmapkey(lambda k: k.lower(), proxies_config)

	# Connect to Google Play Store
	api = GooglePlayAPI(locale=config['LOCALE'], device_codename="shamu", proxies_config=proxies_config)
	api.login(config['GOOGLE_LOGIN'], config['GOOGLE_PASSWORD'], config['GOOGLE_AUTH_TOKEN'])

	# Get the version code and the offer type from the app details
	m = api.details(packagename)
	vc = m["details"]["appDetails"]["versionCode"]
	ot = m["offer"][0]["offerType"]

	if output == None:
		output = f"{packagename}_{vc}.apk"

	# Download
	print("Downloading to file %s with size %s..." % (output, sizeof_fmt(m["details"]["appDetails"]["installationSize"])))
	data = api.download(output, vc, ot)
	io.open(output, "wb").write(data)
	print("Done")
x@192-168-10-195 ******* % python -m ******* gp download com.smartprojects.MemoryLocker
Downloading to file com.smartprojects.MemoryLocker_35.apk with size 2.7MB...
[!] RequestError: Error retrieving information from server. DF-DFERH-01
x@192-168-10-195 ******* % python -m ******* gp download com.smartprojects.MemoryLocker --trace
Downloading to file com.smartprojects.MemoryLocker_35.apk with size 2.7MB...
Traceback (most recent call last):
  File "/Users/x/.pyenv/versions/3.9.0/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/Users/x/.pyenv/versions/3.9.0/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/Users/x/Downloads/Projects/*******/*******/__main__.py", line 35, in <module>
    cli()
  File "/Users/x/Downloads/Projects/*******/*******/__main__.py", line 23, in cli
    cli_commands()
  File "/Users/x/.pyenv/versions/3.9.0/lib/python3.9/site-packages/click/core.py", line 1137, in __call__
    return self.main(*args, **kwargs)
  File "/Users/x/.pyenv/versions/3.9.0/lib/python3.9/site-packages/click/core.py", line 1062, in main
    rv = self.invoke(ctx)
  File "/Users/x/.pyenv/versions/3.9.0/lib/python3.9/site-packages/click/core.py", line 1668, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/x/.pyenv/versions/3.9.0/lib/python3.9/site-packages/click/core.py", line 1668, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/x/.pyenv/versions/3.9.0/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/x/.pyenv/versions/3.9.0/lib/python3.9/site-packages/click/core.py", line 763, in invoke
    return __callback(*args, **kwargs)
  File "/Users/x/Downloads/Projects/*******/*******/cli/gp.py", line 207, in download
    download_package(**kwargs)
  File "/Users/x/Downloads/Projects/*******/*******/cli/gp.py", line 114, in download_package
    data = api.download(output, vc, ot)
  File "/Users/x/.pyenv/versions/3.9.0/lib/python3.9/site-packages/gpapidl/googleplay.py", line 625, in download
    raise RequestError(response.commands.displayErrorMessage)
gpapidl.googleplay.RequestError: 'Error retrieving information from server. DF-DFERH-01'

Error when installing via pipx

Issue

An error occurrs when trying to install gplaydl via pipx:

└─$ pipx install gplaydl
Fatal error from pip prevented installation. Full pip output in file:                                                                     /home/user/.local/state/pipx/log/cmd_2024-04-20_23.44.04_pip_errors.log                                                           
pip failed to build package:
    cffi

Some possibly relevant errors from pip install:
    error: subprocess-exited-with-error
    c/_cffi_backend.c:407:23: error: lvalue required as left operand of assignment                                                        c/_cffi_backend.c:410:23: error: lvalue required as left operand of assignment                                                        error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1                                                            
Error installing gplaydl.

How to reproduce

Try running pipx install gplaydl

Is there a way to change the default language / store?

Hello!!!
First of all thanks for this great package.
I'm having troubles downloading few apks and i'm assuming its due to either language/store.
Is there an easy way to modify the language? like --lang es_mx

Thanks a lot!!!

'server says: BadAuthentication'

Despite the authentication is correct and I've checked it with different Gmail accounts upon running the script I get: 'server says: BadAuthentication'

`configure` does not work when installed by root

Traceback (most recent call last):
  File "/usr/local/bin/gplaydl", line 11, in <module>
    load_entry_point('gplaydl==1.3.5', 'console_scripts', 'gplaydl')()
  File "/usr/local/lib/python3.7/dist-packages/gplaydl/gplaydl.py", line 224, in main
    configureauth()
  File "/usr/local/lib/python3.7/dist-packages/gplaydl/gplaydl.py", line 74, in configureauth
    os.makedirs(CONFIGDIR, exist_ok=True)
  File "/usr/lib/python3.7/os.py", line 211, in makedirs
    makedirs(head, exist_ok=exist_ok)
  File "/usr/lib/python3.7/os.py", line 221, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/usr/local/lib/python3.7/dist-packages/gplaydl/.gplaydl'

Nothing more was done outside of sudo pip3 install gplaydl.
Currently running Debian Buster.

installing on m1 mac mini (fail)

while trying to install on mac mini with m1 chip, the installation failed (cryptography packages issues)
anyone was able to overcome it?

[Error] Application is not Installed

Hello, i want to thank you for your amazing work.

I have a problem with this script when i use my phone to install the APK file. Some apk files cant install and got this error: Application is not Installed.

Do you know what's the problem with the APK file ?

Example package: com.nimble.petsafety

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.