Skip to content

rohitn92/manipalconvocation15

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

App Engine Python Project

What does this project do?

This project does the following 3 things -

  • Repeatedly check the status of a URL using the "Requests" library a through a Cron job scheduler that runs a particular method in the python script
  • Send emails via GMAIL through python script using STMPLIB
  • Create an online mailing list through form submission that is verified using Google's "Recaptcha"

What will you learn?

  • How to implement reCAPTCHA using python. The packages you will find online are quite redundant. You just need to send a POST request with certain parameters to google's verification.
  • Schedule tasks using cron on Google App Engine.
  • How to check the status of a URL using HTTP requests, since GAE doesn't support ICMP or telnet.
  • How to automate emails through you web application
NOTES
  • The Requests library is included in my repository since it is not provided in Google Cloud's Runtime-Provided Libraries. So you will need to upload it with your application.
  • Emails will not be sent till you enable BILLING on your application which enables sockets.
  • You cannot send more than 100 emails a day via gmail. Also, you can be easily marked as a spammer for bulk mails. So use OFFSET, LIMIT and you judgement as to how you will handle sending over 100 mails, whether multiple IDs, breaking the emailing list into parts, etc.

MORE NOTES

App Engine does not have ICMP or Telnet Support. That is the reason we are using Requests library for its http request API call for external host communication.

For a normal python script, something like the following would have worked as well -

cmd=shlex.split("ping -n 1 convocation.manipal.edu/registration/startup.aspx")
try:
   output = subprocess.check_output(cmd)
except subprocess.CalledProcessError,e:
   #Will print the command failed with its exit status
   print "The IP {0} is NotReacahble".format(cmd[-1])

else:
  print "The IP {0} is Reachable".format(cmd[-1])

For any more information, contact me

@theRonnicle

About

App Engine Python Project implements reCaptcha, Cron job for URL status check and automated STMP mail via Gmail for a mailing list subscribed via the app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages