Skip to content

Releases: DEENUU1/meta-spy

Facebook spy v1.4

25 Nov 10:38
Compare
Choose a tag to compare
  • Download scraped images from instagram profile
  • Save url of an image to database instead of path of downloaded file
  • Display Instagram account and scraped data in web application
  • Improve commands to make them easier
python main.py fb-search <"Search Query"> <results> <option_1> <option_2> ... 

Options:
--post # Search for posts based on given query
--results # Number of results 
--people # Search for people based on given query
--group # Search for group based on given query
--place # Search for place based on given query
--event # Search for event based on given query
--page # Search for page based on given query
python main.py fb-account <facebook_id> <option_1> <option_2> ...

Options:
--work # Scrape work and education information from the given facebook account
--contact # Scrape contact data from the given facebook account
--location # Scrape location data from the given facebook account
--family # Scrape family members data from the given facebook account
--name # Scrape full name from the given facebook account
--friends # Scrape friends list from the given facebook account 🛑 Page not support
--images # Scrape images from the given facebook account 
--recent # Scrape recent places from the given facebook account 🛑 Page not support
--reels # Scrape urls for reels from the given facebook account
--reviews # Scrape reviews from the given facebook account
--videos # Scrape urls for videos from the given facebook account
--da # Download all videos from the given facebook account
--dn # Download only new videos from the given facebook account
--posts # Scrape all posts from the given facebook account
--details # Scrape details of posts from the given facebook account
--likes # Scrape likes from the given facebook account
--groups # Scrape groups from the given facebook account
--events # Scrape events from the given facebook account
python  main.py insta-account <id> <option_1> <option_2> ...

Options:
--images
--stats

Facebook spy v1.3

19 Nov 14:29
71e3b1c
Compare
Choose a tag to compare

Changes

  • Change the name of a project to "Meta Spy"
  • Scraping images from instagram profiles
  • Save scraped images to the database and display on local server
  • Delete AI features

New commands

python  main.py instagram-profile-images <instagram_id>

Facebook spy v1.2

10 Oct 12:58
Compare
Choose a tag to compare
  • Real time result while scrolling in scrapers:
    • Post url
    • Images
    • Friend list
  • Automatically save scraped data to JSON file
    • data available in this directory /facebookspy/scraped_data/
  • Running scrapers parallely while using commands:
    • python main.py python main.py scrape-basic-data <facebook_id>
      • Automatically run all selected scrapers at the same time
    • python main.py full-scrape <facebook_id> <facebook_id>
      • If 2 or more usernames are provided it's gonna scrape all users at the same time
      • But if only 1 username is provided it's gonna run all selected scrapers at the same time
  • NEW command - SEARCH
    • This command allows to search for: places, pages, groups, person, events and posts
    • This command also has a parallel feature
python main.py search < " Search Query Here " > < number_of_results >

Basic Scraper Console
Search  Scraper Console
Full Scraper Console

Facebook spy v1.1

05 Oct 20:08
Compare
Choose a tag to compare

1.1

  • Improve local web application
    • Delete React application
    • Add templates for fastAPI
    • Display all information about specified Person on a single page
    • Delete docker and docker-compose files
  • Fix scraping URLS of a posts from user's profile
  • Improve scraping details of a post
    • Number of likes
    • Content (text)
    • Image urls
    • Author
    • Post url
  • Improve typehints
  • Add new selector for scraping videos from user's profile

New commands:

python main.py scrape-person-post-details <facebook_id>

Facebook spy v1.0

17 Sep 14:27
Compare
Choose a tag to compare
  • Delete command to run web application without docker
  • Post classification using transformers to check if post content is possitive or negative and save those data to database
python post-classifier <option>

Options:
--all-posts // Run post classification for all posts from the database
--id // Run post classification for specified post from the database
--person-id // Run post classification for a specified person from the database
  • Add missing typehints
  • Change the structure of a project
  • Friend crawler (This command works similarly to the command that scrapes data about a given user's friends list. The difference, however, is that after scraping and creating Friend objects, it also creates objects for the CrawlerQueue model and after successfully scraping friends for one user, it proceeds to scraping the list of friends for the next user in the queue.)

Run crawler

Start crawler for specified facebook account

python main.py friend-crawler <facebook_id>

Display queue

Display all objects available in the queue

python main.py display-queue

Delete queue object

Delete specified queue object

python main.py delete-queue-object <id>

Clear queue

Delete all objects from the queue

python main.py clear-queue
  • Option to scrape multiply users in full-scrape command
python main.py full-scrape <facebook_id> <facebook_id> <facebook_id>

Facebook spy v0.9

07 Sep 14:07
Compare
Choose a tag to compare
  • Add repository functions to return all data for specified Person object
  • Implement LangChain and free Open Source LLM model to create summary for specified Person object based on scraped data
  • Add command to create summary
  • Add command to save all scraped data and summary to PDF file for specified Person object
  • Fix saving events and groups if there is no data
  • Disable displaying logs from Selenium in the console
  • Add command to create graph of the connections between Person objects based on their friends

New commands

To create a graph of connections between Person objects based on their Friends use this command

python main.py graph 

Basic Scraper Console

Save scraped data for specified Person object to PDF file

python main.py report <facebook_id> 

Use free open source LLM model to create a short summary for specified Person object based on scraped data

python main.py summary <facebook_id>

Facebook spy v0.8

24 Aug 20:44
Compare
Choose a tag to compare
  • Scrape user's groups
    
  • Scrape user's likes
    
  • Scrape user's Events
    
  • Optimalized scrolling
    
  • Add number_of_friend field in Person model
    
  • Pytest for all FastAPI endpoints and models
    
  • Add email and phone_number field to Person model
    
  • Fix saving full_name field to Person model
    
  • Add scraper for Contact data
    
  • Refactor scrapers to make them simpler
    
  • Create a few commands (more details in commands page) with a drop down list to select which scrapers use
    

Facebook spy v0.7

17 Aug 20:07
2ec07e2
Compare
Choose a tag to compare
  • Scrape facebook posts urls from a facebook account
  • Scrape post details (number of likes;comments;shares, content etc.)
  • Add information about saving data to database
  • FastAPI endpoint to return a list of posts for a give Person object
  • React page to display a list of posts for a given Person object
  • Refactor commands
  • Display time that was taken to finish pipeline
  • Update 'server' command to run FastAPI + React app with or without Docker
python main.py server --d 
python main.py server 
  • Add shell script to run React application with Python
  • Add Docs website which you are using now

See new docs page here: https://deenuu1.github.io/facebook-spy/

Facebook spy v0.6

14 Aug 18:37
289ff09
Compare
Choose a tag to compare

Key Features:

  • Add bool field 'downloaded' to Video and Reel model
  • Update class to scrape Video and Reels
  • Create Downloader class to download all videos for specified person, only not downloaded videos for specified person and download single video by passing URL
  • Fix Image class to save only Photos not any other images from facebook page
  • Fix Video & Reel class to save only correct urls
  • Refactor repository modules
  • Make endpoints for Note model async in fastapi app
  • Create Logsclass and display errors in CLI app

New commands

python main.py start-server-backend
# Run only fastapi server 

python main.py download-all-person-videos --name <facebook_id>
# Download all videos from the specified facebook account

python main.py download-new-person-videos --name <facebook_id>
# Download only not downloaded yet videos from the specified facebook account

python main.py download_video --url <url_to_facebook_video>
# Download video from facebook based on the URL 

Facebook spy v0.5

07 Aug 12:41
063b828
Compare
Choose a tag to compare

Key Features:

  • Bugfixes in FastAPI app
  • New models and endpoints: notes, adding/update/display notes for specified person object, display images
  • React + Vite as a frontend for web application
  • downloading scraped videos
  • docker & docker compose
  • command to run local server using docker
  • command to scrape only video URLs and save to database or scrape video URLs and download videos

New commands

python main.py server 
# Run local server to browse scraped data

python main.py scrape-videos-urls --name <facebook_id>
# Scrape and save to database video urls 

python main.py scrape-and-download-videos --name <facebook_id>
# Scrape, save urls to database and download videos