Can Selenium be used on Google App Engine now? - google-app-engine

I am trying to run Selenium on Google App Engine. I have seen a lot of comments from years ago saying that you can't. The I found this link saying that headless Chrome is now available on GAE. The post has been written after the other comments that said that you can't use selenium on GAE so I gave it a try.
from selenium import webdriver
browser = webdriver.Chrome()
After deploying the code to gae I got this error:
ages/selenium/webdriver/common/service.py", line 76, in start stdin=PIPE) File "/opt/python3.7/lib/
python3.7/subprocess.py", line 775, in __init__ restore_signals, start_new_session) File "/opt/pyth
on3.7/lib/python3.7/subprocess.py", line 1522, in _execute_child raise child_exception_type(errno_num,
err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: 'chromedriver': 'chromedriver'
Am I doing something wrong or did I misunderstand the linked post?

The link you provided is for the Node.js runtime. It might not be available in python yet.
I was able to get it working in python on App Engine Flex by doing the following
Python Headless Browser for GAE
For your specific error I had to edit the docker file to download the webdriver

Related

Google App Engine SOAP Not Appearing in phpinfo()

Fatal error: Class 'SoapClient' not found in ../libraries/Shipping/drivers/Shipping_usps.php on line 12
Using Google App Engine for PHP, I receive the error above when try to instantiate a SoapClient object. I've checked phpinfo() and the SOAP extension isn't showing up. When I deploy to production, it does show up, so I figure there's something that's causing the extension not to load locally. I run the dev server from the command line as opposed to the application on Mac OS.
GAE is up to date. Any advice is appreciated.

Laravel FatalErrorException on Google App Engine

I am deploying an laravel application in Google app engine. I have installed SDK and python. I can deploy it online, but when run application localy by using this command from cmd:
python dev_appserver.py --skip_sdk_update_check=yes --port=8080
--admin_port=8000 --php_executable_path=C:\wamp\bin\php\php5.4.12\php-cgi.exe C:\laravel-master
It shows the following error:
PHP Startup: apc_fcntl_create: could not open C:\Windows\.apc.a02796
I really need to run it locally because I can't test it online. Pls I need some help
This is the cache having problems to send write file commands to your Windows SO. A workaround to this is to locally disable APC by adding:
apc.enabled = "0"
Do your SDK php.ini file.
But it's better to keep it enabled in your GAE application.

PyDev PDFMiner GAE: ImportError: No module named pdfminer.converter

I work on GAE project in PyDev
I'd like to use the PDFminer library in order to convert a pdf file to a text file.
My problem is when i run the application it dosn't work and it displays this error message :
ImportError: No module named pdfminer.converter
I tested the same code in a normale python project and it works fine.
I used the same code in python console and it works too
I add the pdfminer folder to the python interpreter, i removed the interpreter and i add it again but i have always the same error.
Really i don't what i have to do, can anybody help me please ?
The problem comes from the fact that the PDFMiner is a third party library i copied the PDFMiner's files into the project and i works fine GAE don't import lib if isn't a pure python even if it exits in PYTHONPATH I found the solution in this post: Google App Engine "no module named requests" PyDev

Google app engine and prediction API (error import)

Please help me to solve this error? I'm doing this exercise on app engine (https://developers.google.com/appengine/articles/prediction_service_accounts) , but I'm stuck in step 6.2 because I raise this error(When I run the deploy operation, it is successful step 6.1):
: No module named appengine
Traceback (most recent call last):
File "/base/data/home/apps/s~01prediction/1.367567721220366691/main.py", line 29, in
from oauth2client.appengine import AppAssertionCredentials
The error in line 29 :
from oauth2client.appengine import AppAssertionCredentials
Did you run step 3.2? That should have copied some folders into prediction-demo-skeleton. You should have a folder called oauth2client inside prediction-demo-skeleton. Take a look at the folders that are inside prediction-demo-full.
ps: a good practice before deploying is to run your app using the devappserver.
The Google API Python Client now has a pre-packaged ZIP containing all dependencies that might make installation easier. See:
https://code.google.com/p/google-api-python-client/downloads/list
Select google-api-python-client-gae-1.1.zip for download. Unzip this file inside of your AppEngine app directory.
Along the lines of Sebastian's suggestion it generally is a good idea to test locally using the devappserver. In this case you should be able to get past the import issue, however AppAssertionCredentials won't actually be able to generate any access tokens until it is deployed into a production environment, so it will be of limited use for you.

My Google App Engine appspot URL wont work

I recently created my Google App Engine account, and uploaded my application, and have an instance of said app running.
I can access my app via localhost:8080 but when I try to use myappid.appspot.com I get a 500 Server Error (Of course I replace "myappid" with my apps name). This is what it says:
"Error: Server Error
The server encountered an error and could not complete your request.
If the problem persists, please report your problem and mention this error message and the query that caused it."
Can anyone help me get the URL working? I need my team to be able to access this app from anywhere. I have no idea what could be wrong with it, I am very new to GAE. After a lot of searching all I find is people saying their appspot URL works, and want other options. But I just want my appspot URL to work first!
Some more info:
This is a Python app, using the GAE Python SDK, I am running Windows 7, and using the GAE Launcher GUI to deploy and run the app.
Thanks in advance!
EDIT: Here is the error in my Log:
: No module named flask Traceback (most recent call last): File "/base/data/home/apps/s~luxtestapp/1.362824400913245138/bootstrap.py", line 19, in from app import create_app File "/base/data/home/apps/s~luxtestapp/1.362824400913245138/app/init.py", line 10, in from flask import Flask
Apparently the app uses Flask instead of Webbapp2. Honestly I'm not too sure about it all, because this is a pre-built app that I downloaded and deployed. I didn't write it.
In the control panel for your app on appspot go to the log section.
Appengine
The see what the latest entry says. Filter to "error".
Also when you create your app (python webapp2 example) turn debugging on:
app = webapp2.WSGIApplication([
('/', MainHandler)],
debug=True)
You'll get a much more informative error screen then instead of '500'.
You need to copy the flask folder to your project folder. In general every package not supported by GAE (see list of supported libraries), must be present in the project folder.
Try setting the environment variables before/after deploy. Go to the local project folder, open bash the paste this commands: ps: Ignore the $ sign
$ set HTTP_PROXY=http://cache.example.com:3128
$ set HTTPS_PROXY=http://cache.example.com:3128
check this link out for help: cloud.google.com/appengine/docs/python/tools/uploadinganapp

Resources