These are projects posted by the students of Dr. Gove Allen at Brigham Young University. These students have taken one semester-long course on VBA and generally have had no prior programming experience

Tuesday, April 10, 2012

Jason Johnson Facebook Scraper and Emailer

My fiancée, Nicole, and I have been preparing for our wedding, and Nicole was wishing there was a different way to get friends’ addresses other than facebook.  She didn’t like the lack of privacy for our guests in using a facebook group, and she felt that a googledoc form was too impersonal.  She was just thinking of personally inviting all 150 of our friends manually.  At this time, Gove spoke about how we should be making our final projects, and how our final projects should be something that we should be passionate about.  I am passionate about preparing for my wedding, so I thought that this would be a great opportunity to help both Nicole and myself out by writing an excel macro that would allow us to choose which friends we wanted to email from facebook write a generic email, and then personalize it for each individual guest.  Initially, I was only going to allow the macro to send emails via facebook; however, I later decided to allow a user to send messages via facebook and email. 
In the following document I will outline the implementation of my VBA project as well as address the difficulties that I found along the way.  The main portions of my project are enumerated below:
1.        Internet Explorer Automation and Logging into facebook
2.       Scraping Friends
3.       Cleaning Friend Data and Presenting it in a Form
4.       Form Rules and Behaviors
5.       Sending the Message Via facebook
6.       Sending the Message Via Email
It is important to note that, though this paper will give a comprehensive view of my project, it is a very top-level view as well.  That is, there are many fine details of my project that will not be addressed in this paper and, if one is interested in understanding the underlying infrastructure of my project, must be investigated through viewing my code and running my project.

No comments:

Post a Comment

Blog Archive