We need an application that will spider and scrape some pages from two websites, enter that information in to a database, and then post the info to another website using a web based form.
The application can take the form of a standalone or a web based app. Detailed description below
A. List Books
We Need an Application that will scan Book Seller 1's Top 500 books list, record the details of each book (name, ISBN, price), then compare them to Book Seller 2's price. If there is a sufficient margin between the two, the application should list the book.
The application would need to do the following:
1) Scan all the book pages of Book Seller 1's Top 500 list
2) Compile a Database with the Name, ISBN and Sell Price of each Book (checking for in stock status, and excluding out of stock, pre orders etc)
3) Convert Book Seller 1's Price to local currency (using the current mid market rate + 3%)
3) Search Book Seller 2 for the corresponding book/ISBN
4) Add Book Seller 2's price to the Database
5) Compare Book Seller 1's price to Book Seller 2's price.
6a) Check if we have already listed the book for sale at Book Seller 2's Website
6b) If (BS1 Price + $3.50) is less than (BS2 Price - 20% - $0.01), list book at BS2 Price - 20% - 0.01
6c) If (BS1 Price + $3.70) is less than BS2 price, but greater than (BS2 - 20% - $0.01), list book at BS1 Price + $3.70
7) Post Book to Book Seller 2's Website using their Form (List 5 times to save constant relisting when it sells)
B. Check Margins/Stock
Periodically Book Seller 1 will either raise their price or run out of stock. In those cases, we need to de-list the book from Book Seller 2.
1) Get List of books we have for sale on Book Seller 2's Website
2) Get Book Seller 1's Current Price and Stock status
3) If Book Seller 1's price has changed, and if the new price makes margin less than $1.50, delist book from Book Seller 2's site.
4) If Book Seller 1 is out of stock, de-list book from Bookseller 2's site
1) Rate limiting/friendliness to site load -- Has to be able to do it slowly and respectfully (no opening hundreds of sockets at once etc)
2) Ability to behave in a human like manner (some degree of randomisation in pauses etc - Fishpond side only)
3) Clean/Modular code - To allow for easy updating if either website changes its' page layout
4) Ability to generate stats/logs in some human readable format - (Nothing fancy - just what has been listed, what the price/margin is)
1) Need to assign copyright to us
2) Winning bidder will need to agree to a non-disclosure/non-compete (very minimal - Just that you won't implement the same system yourself or sell it to anyone else)