OAuth authentication for Google Calendar API with Python - python-2.7

I am writing an application in Python that should be able to create and modify events in a Google Calendar according to the data in a Google Sheet.
As I have almost no experience with these APIs, I am following this simple guide on the Google documentation https://developers.google.com/google-apps/calendar/quickstart/python#. I enabled the Calendar API in the Developer Console of my project and installed the Google libraries as explained in Step 1 and Step 2. When I try to run the quickstart - which I simply copied from the guide - the script correctly opens up a window in my browser (Google Chrome) asking to give permission to my application to access the calendars. When I click on "Accept", however, I get an error page saying that "localhost didn’t send any data. ERR_EMPTY_RESPONSE". No credentials are stored in the ~/.credentials folder, as it should happen according to the script. Moreover, the execution of the script hangs at the point of authentication. Where could the problem be?

After following the Python Quickstart setup guide,
make sure you're running a local webserver like
python -m SimpleHTTPServer 8080
After that my python script ran without a hitch:
console output:
noogui#noogui-dpg:~/Downloads/calendarquickstart$ python calendarquickstart.py
Getting the upcoming 10 events
2018-12-23T11:30:00+08:00 Foo Fighters Concert

Related

Is it possible to create a GUI with python on the Google Cloud Platform

I am trying to create a web application using python on the google cloud platform. I have followed Google's quick-start guide and completed it.
App currently just prints out text
However, I am struggling to figure out a way to create a gui. I am aware of the python modules tk and tkinter and I have tried to use those with no success. I also saw the warning in the Google Cloud Console about how installed modules only exist for the current instance of the app - but even when installing the module directly before deploying the app - it still throws an import error.
I did some research and followed this guide: https://cloud.google.com/appengine/docs/standard/python/tools/using-libraries-python-27
Assuming I didn't miss any steps - would this guide solve my problem? Or is there a better way to create a GUI?
Any suggestions are encouraged. Thanks
App Engine is web oriented service. Read about it in the overview and the appropriate gui there would be a web based one.
If you want to have a remote server that will server graphical applications look closer at Google Cloud Compute Engine where you can have a VM instance, where you can install and run any application.

trying to setup TinyWebDB on google cloud, but deploy not working

I am trying to follow the instructions on this page, and they are working great, until the part where I deploy from my Google App Engine Launcher. When I click deploy I should see something like this:
But instead, I see something like this:
and the end result is that my app doesn't get deployed to xxxxxxx.appspot.com, it redirects me to http://localhost:8080/?code=4/EfmizPdAPVDgoSInA8mS1KVOvQTkWX4ziFnEpG3XKxA#
I'm a begginer with this kind of tech, please, any suggestions on how to troubleshoot?
Found the answer here. In my case, what worked was to first disable the app in the App Engine Launcher, and only then hit deploy. First time I tried, it authenticated, then second time I deployed, it deployed successfully. Thanks Arnie.
In case, I post his other suggestions:
1) remember to give your google id access to less secure apps.
2) remember to go to appspot.com or https://appengine.google.com/ and accept terms and conditions. Your project should also be active on https://console.developers.google.com/project
3) use correct versions of python and google app engine SDK
4) Before hitting deploy button on google app engine stop the app from running on your local host. It will NOT deploy while it is running locally on local host.

Rest Web Service,

i am approaching the development of Restful web services for the first time. I tried to follow this guide for Netbeans . I am stuck at the testing of the web service.
When i open the
http://localhost:8080/WebServicesTest/test-resbeans.html
page, none of the root resources appears in the left menu. (there should be entities.customer and entities.discountcode)
I really can't find a solution.
Thanks in advance to anyone who likes to give me a hint.
--------------- Edit
If i click on CustomerDB --> Deploy i get an error
In-place deployment at C:\Users\utente\Documents\NetBeansProjects\CustomerDB\build\web
GlassFish Server 4, deploy, null, false
C:\Users\utente\Documents\NetBeansProjects\CustomerDB\nbproject\build-impl.xml:1071:
The module has not been deployed.
See the server log for details.
The line 1071 of build-impl.xml is
<nbdeploy clientUrlPart="${client.urlPart}" debugmode="false" forceRedeploy="${forceRedeploy}"/>
I checked out the referenced tutorial.
Which exact path did you follow? Did you change anything?
Most likely your CustomerDB application is not deployed correctly (see GlassFish Server output in NetBeans) and thus is not able to expose the web service and thus is not displayed in the test page (nothing visible in the side bar).
I tried the tutorial myself and had that phenomenon when using another database ("test" instead of the sample db, which was not connectable in my installed environment), resulting in a message that "test__pm" resource was not found. I then created a conection pool and a jdbc reosurce for test and then it worked.

SharePoint-hosted Task pane app not authenticating

Summary:
I have an Office 365 E3 account where I'm trying to deploy a Word task pane app that will read some SharePoint list data. Right now, I'm just trying to get the task pane app to load, however, it shows the Office 365 login page (in the pane) but does not do anything after clicking Login.
Details:
I went through the instructions provided here:
http://msdn.microsoft.com/en-us/library/office/fp179815.aspx
Basically, I create an App for SharePoint configured as SharePoint-hosted, then in the same project, added an App for Office (Task Pane App for Word only). The SharePoint app also has a custom document library.
I am able to install the app to my App Catalog, and it correctly shows up in Site Contents where I see it being provisioned to the app web. I can also launch Word 2013 with the Trusted App Catalog configured correctly, and I am able to see my Task Pane App and insert it. When I click Insert, it loads it but prompts for credentials.
I am using the same credentials all throughout this exercise so by virtue of being able to install and deploy the SharePoint app, you can trust that I'm providing the right credentials.
It also appears the custom document library is never created - I wonder if both suffer from the same underlying issue.
I encountered the same problem and the solution provided in the answer below did not help.
After some desparation i created a taskpane app using the Napa Cloud App, opened the application in Visual Studio and went looking for differences.
In the Taskpane app manifest.xml file i found the following entries which were missing in my own application manifest:
<AppDomains>
<AppDomain>https://login.microsoftonline-int.com</AppDomain>
<AppDomain>https://login.microsoftonline.com</AppDomain>
</AppDomains>
This solved my problem and cured one horrible friday.
I was able to get this to work. It turns out doing a Deploy from Visual Studio (whether you right-clicked Deploy or F5-debug), the installation of the app isn't enough.
To make it work, I skipped doing a Deploy all together, but instead published my app. I then took the .app file and loaded it in my App Packages folder, and then deployed it from there.
Unfortunately, I don't know the difference between the two, but I'm assuming it has something to do with provisioning the app web for the Office App.

How can I use Django to write a console app (i.e., text-based & used from a terminal) that runs over the Internet?

There is so much power at the command line. Web pages are for non-power-users. I'd like my Django app to also have a console-based interface so that people can really work fast and not fiddle with graphics and a mouse. Has anyone tried doing something like this using Django? I like the example of heroku -- once you create an account at heroku.com you can do so much at the command line and interact with the server without the overhead of HTTP.
This is exactly what the 'shell' command of manage.py does. It gives you a python prompt with a few things set up so you can import your models and mess with them via the django API. So if your command-line tools are for superusers with shell access on the server then you can just write some python scripts that get run in the same way.
However, if you want access to users from other machines then you (obviously?) need to go via HTTP, but python has libraries for doing http requests. The only complication is with logins and cookies, but python's libraries can help you with that too - see urllib2, cookielib etc. You'd have to write some plain-text templates for the returned output.
I have no experience with heroku so I'm not sure what it's doing - what kind of thing can you do at the command line with it?