I need a Web Application that will analyze a Pinterest Source feed and display ranked list of how many times a photo was Pinned. For example, a feed URL is [login to view URL]
Requirements:
- Must be Web based, JAVA application running in TOMCAT
- Delivery of a GIT project repository with a MAVEN build that produces a WAR file.
- Connection to Pinterest should made over a Proxy (IP, Port, Username, Password) that is stored in a property file
- Main screen should have input:
URL (example: [login to view URL])
Number of posts to analyze (example 1000)
Filter Words (optional field, but if entered will filter results based on description)
Start button
- Results Screen will show:
Rank (example 1, 2, 3...)
Image 500px max length/width
Pin Count
Link (link of first PIN found with this image)
How Analysis will be done:
- Scrape Pinterest URL and extract IMG link & PIN link, Description.
- If Filter Word is specified, check if there is a match to description.
- Fetch the IMG using img URL and calculate MD5 checksum of the Image file received.
- Store MD5 value, IMG link + pin link, count=1 in a Map that maps MD5 to object.
- For every new MD5 value, store new object, for every repeating MD5 value, increment the counter.
- The Pinterest page will be "scrolled" until required number of Pins is reached.
- When reached required total, sort results in the map and return sorted list.
Testing:
- Must be completed before delivering the project.
*** Please ensure you have required skills to deliver per requirements above ***
Delays will not be tolerated and project will be immediately re-assigned.
Hi,
I am Java developer with 5 years of experience building enterprise tools.
For this solution I would use following technology stack :
1. git ( probably bitbucket repository so you can check daily progress )
2. Spring Boot with maven configuration and tomcat as you want it to be
3. Selenium Web client for scratching the web site ( it has some cool features and allows proxy calls )
4. Spring MVC for simple page
5. jUnit, mockito for testing ( probably some more libraries ...)
The project will be demonstrated and delivered before Friday [login to view URL] 2016. 17:00 EST :)