An open API service indexing awesome lists of open source software.

https://github.com/wael-sudo2/facebook-page-info-scraper

Free Facebook pages MetaData Scraping Library - Unlimited Calls
https://github.com/wael-sudo2/facebook-page-info-scraper

crawler crawling-python crm data-analysis data-mining facebook facebook-apis facebook-page-information facebook-page-scraper facebook-scraper facebook-scraping leadgeneration marketing metadata python scraping scraping-python selenium

Last synced: 4 months ago
JSON representation

Free Facebook pages MetaData Scraping Library - Unlimited Calls

Awesome Lists containing this project

README

          

==============================
facebook-page-info-scraper
==============================

.. image:: https://img.shields.io/pypi/v/facebook-page-info-scraper.svg
:target: https://pypi.python.org/pypi/facebook-page-info-scraper
:alt: Latest Version
.. image:: https://img.shields.io/pypi/pyversions/facebook-page-info-scraper.svg
:target: https://pypi.python.org/pypi/facebook-page-info-scraper
:alt: Supported Python Versions
.. image:: https://static.pepy.tech/badge/facebook-page-info-scraper
:target: https://pepy.tech/project/facebook-page-info-scraper
:alt: Downloads
.. image:: https://static.pepy.tech/badge/facebook-page-info-scraper/month
:target: https://pepy.tech/project/facebook-page-info-scraper
:alt: Monthly Downloads
.. image:: https://static.pepy.tech/badge/facebook-page-info-scraper/week
:target: https://pepy.tech/project/facebook-page-info-scraper
:alt: Weekly Downloads

Future Improvements
-------------------
AI based crawling

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.

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:

.. code-block:: shell

pip install facebook_page_info_scraper

Usage
-----

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

.. code-block:: python

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:

.. code-block:: python

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\\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\\AppData\Local\Google\Chrome\User Data``
- **macOS:**
``/Users//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.