Facebook Ads Scraper/Spy
$500-1200 USD
Paid on delivery
Hi I am looking for someone to write me something like FBSpy which is no longer available.
You can read about FBSpy here. [url removed, login to view]
Basically it will be a php script that scrapes the ad board on facebook
[url removed, login to view]
for ads. It will save all ads in database so that I can then browse and search thru them at a later time
It will handle multiple accounts and work with proxies for international facebook accounts
## Deliverables
Specs for Facebook Ad Scraper
Just a quick background on this. I do lots of advertising on Facebook. It really helps to see what ads are showing for different Facebook account. I have many Facebook accounts already but it is really annoying to log in to each account to see what ads are showing for that account.
This is script automate all of this.
There will be 3 core modules to this php script
1) account & config editor
2) analysis/reporting
3) scraper
It will run in a php5/mysql environment.
1) Account & Config editor
A) Page: List of Facebook Accounts
On this page I can add/run/pause/edit/delete Facebook accounts.
Add - add a new account
Run - Manually log in and scrape ads for given account
Pause - account will no longer be checked in automatic execution
Edit - edit details of account
Delete - delete account
B) Page:Add/Edit Facebook Account
A Facebook account will have the following fields
Name
facebook username
facebook password
proxy (drop down list of available proxies)
gender
relationship status (dropdown)
intere sted in (dropdown)
country
age
tags (maximum of 5 user defined tags)
frequency - this is how often the script check this facebook account for new ads each day. This will be explained more under the scraper module
C) Page:Proxy Management
On this page I can add/edit/delete proxy accounts
A proxy account will consist of the following fields
proxy name
proxy ip address
proxy username
proxy password
proxy port
2) Analysis/Reporting
Page: Browse Ads
This will be the main page where I view the ads
The default view will list all the ads across all the accounts in pages of 20 ads (5 rows of 4) ranked by how many times the script has seen the ad.
The following filters need to be there as well
Facebook account name
date range
gender
country (drop down containing countries I have created accounts for)
age (min and max)
relationship status (drop down)
interested in (drop down)
search box (allows search of ad title, ad description or tags (a drop down menu will determine which text you are searching for))
The ads should appear just as they appear on facebook
with the following extra info
date last seen
amount of times ad has been seen given current filter
Page: Detailed Ad View
This page will be accessed by clicking on an individual ad
It will give a more detailed view of ad by listing the exact time this ads was seen and by which account
One should also be able to ad a tag to this ad.
3) Scraper
The scraper should try to somewhat simulate a regular browser to hide that it is a bot.
I believe this is best done using curl. That will allow you to save cookies and session parameters from previous logins.
When it first logs into the account is should randomly browse a few links from the homepage.
After that it should load and scrape
[url removed, login to view]
For each ads it will grab the following details
Title
Text
website url if listed
title url
image (save the actual image to database if it is not a duplicate)
ui variable (ad id)
The script then needs to determine if the ad is new or it has seen it before
Every ad has a unique id. The database can be indexed based on this.
However many times people will make many versions of the same ad.
To get around this the script will need to check the database to see if there is a matching ad with the same headline, bodytext, and image link.
Executing the Scraper script
All accounts that are not paused will be checked randomly x amount of times a day based on the frequency field.
To accomplish that I will can run a cron command every 10 mins
This will call a script that will then execute a [url removed, login to view] script.
[url removed, login to view] will be responsible for picking which facebook account will ads be downloaded from.
For example I might have 3 accounts in the system with the following freqencies
fb1 - 3
fb2 - 5
fb3 -1
the job of [url removed, login to view] would be to run these accounts 3,5,1 times spread out over the day and not at the same time every day. It does not have to be super random but I just don't want it completely regular or facebook might realize that is is a bot.
Project ID: #3300039