yshalsager / facebook2rss

Turn Facebook feeds into RSS!
GNU General Public License v3.0
34 stars 5 forks source link
facebook fastapi playwright playwright-python rss-feed-scraper rss-generator

Facebook to RSS API [WIP]

A small API for accessing Facebook profile, pages, groups posts and notifications as RSS feeds. Based on FastAPI and Playwright.

Important

The tool is no longer under-development. Facebook doesn't like it, check more info here https://github.com/yshalsager/facebook2rss/issues/21

Disclaimer

1- This tool is provided with no warranty of any kind. I am not responsible for anything that might happen to your Facebook account that will be automated by this tool.

2- This tool is still experimental. It has not been tested heavily and still has some features that are not implemented yet. I built it for personal use but decided to release it as a public open source project. If you have any questions or suggestions feel free to open an issue. Contributions are welcome too!

Installation

The tool requires Python 3.7 with pip v19+ installed or poetry if you use it.

Clone the repository and run any of the following commands:

Using poetry

poetry install

Using Pip

pip install .

Finally, install Playwright required files

playwright install chromium

Docker

You can use Docker to deploy the API quickly.

Build docker image

docker build -t facebook2rss .

Run the container

 docker run -p 8000:8000 -e EMAIL=email -e PASSWORD=password -d facebook2rss

email and password are facebook credentials. You can use any environmental variables defined in config_example.env as:

 docker run -p 8000:8000 -e EMAIL=email -e PASSWORD=password -e API_KEY="123" -e USE_KEY=True -d facebook2rss

Docker compose

docker-compose up -d

Notes:

Usage

python3 -m facebook_rss --login -u email -p password
uvicorn facebook_rss.main:api
uvicorn facebook_rss.main:api --env-file config_example.env

Getting Facebook Feeds as RSS

Features

Limitations

Current status