Skip to content

wael-sudo2/facebook-page-info-scraper

Repository files navigation

facebook-page-info-scraper

Latest Version Supported Python Versions Downloads Monthly Downloads Weekly Downloads

Introduction

facebook-page-info-scraper is a Python package that provides a convenient way to crawl information from Facebook pages. With this package, you can scrape Facebook data with unlimited calls. Whether you're a researcher, a data enthusiast, or a developer working on Facebook-related projects, this library simplifies the data extraction process. It uses Selenium for web scraping and retrieves Facebook page details such as the page name, category, address, email, follower count, and more.

Support the Project

If you find this project helpful, consider supporting by buying me a sandwich! 🥪

Buy Me A Sandwich

Dictionary Contents

This section provides an overview of the dictionary contents.

Dictionary Fields

  • page_name: The name of the page.
  • location: The location of the page.
  • email: The email associated with the page.
  • phone_number: The phone number associated with the page.
  • social_media_links: Links to the page's social media accounts.
  • page_website: The website link associated with the page.
  • page_category: The category of the page.
  • page_followers: The number of followers.
  • page_following: The number of following.
  • page_likes: The number of likes.
  • page_rate: The page rate.
  • review_number: The number of reviews.

This section provides an overview of the dictionary keys and types.

Dictionary Keys

  • page_name: string
  • location: string or None
  • email: string or None
  • phone_number: string or list of strings or None
  • social_media_links: string or list of strings or None
  • page_website: string or list of strings or None
  • page_category: string
  • page_followers: string
  • page_following: string
  • page_likes: string
  • page_rate: string
  • review_number: string

Installation

Use pip to install the package:

pip install facebook_page_info_scraper

Usage

To use the package, import the FacebookPageInfoScraper class and create an instance:

 from facebook_page_info_scraper import FacebookPageInfoScraper

 # providing the page URL
 page_url = 'https://www.facebook.com/example-page'

 # Create an instance of the scraper
 scraper = FacebookPageInfoScraper(link=page_url)

 page_info = scraper.get_page_info()

 # Print page details
 print(page_info)

 page_info = {
    'page_name': 'Example Page',
    'location': 'Some Location',
    'email': 'example@example.com',
    'phone_number': '+33 536337',
    'social_media_links': 'www.instagram.com/example',
    'page_website': 'http://example.com',
    'page_category': 'Some category',
    'page_likes': '36,565',
    'page_followers': '38,225'
    'page_following': '120'
    'page_rate': '33'
    'review_number': '4.6'
}

To use the facebook_page_info_scraper with a specific user profile:

from facebook_page_info_scraper import FacebookPageInfoScraper

# providing the page URL
page_url = 'https://www.facebook.com/example-page'

# provide location where Chrome stores profiles
profiles_path = r'C:\Users\<username>\AppData\Local\Google\Chrome\User Data' # make sure to prefix the path with r'' to create a raw string

# provide the profile name with which we want to open browser
profile = r'Profile 1' # make sure to prefix it with r'' to create a raw string

# Create an instance of the scraper
scraper = FacebookPageInfoScraper(link=page_url, browser_profiles_path=profiles_path, profile_name=profile)

page_info = scraper.get_page_info()
  • To locate your Chrome profile path, you can usually find it at:

    • Windows: C:\Users\<username>\AppData\Local\Google\Chrome\User Data
    • macOS: /Users/<username>/Library/Application Support/Google/Chrome/
    • Linux: ~/.config/google-chrome/ (replace ~ with your home directory)

Contributing

Contributions are welcome! If you find any issues or have suggestions for improvement, please feel free to open an issue or submit a pull request on the GitHub repository.

License

This project is licensed under the MIT License. See the LICENSE file for more information.