fbchat-dev / fbchat

Facebook Chat (Messenger) for Python
https://fbchat.readthedocs.io
BSD 3-Clause "New" or "Revised" License
1.19k stars 412 forks source link
facebook-messenger facebook-messenger-bot hacktoberfest python

This project is unmaintained

This project is officially marked as unmaintained, since my life is somewhere where I just do not have the time and energy to lead this project.

If there is someone out there willing to take the lead, please get in contact, but even if there is, I can't get in contact with the original author @carpedm20 <https://github.com/carpedm20> and get the ability to add others as maintainers, see issue 390 <https://github.com/carpedm20/fbchat/issues/390>. So a fork might be preferable.

I have opened for further discussion in issue 613 <https://github.com/carpedm20/fbchat/issues/613>__.

Thanks for serving you all these years.

- Mads Marquart / @madsmtm <https://github.com/madsmtm>__.

Original project description below

fbchat - Facebook Messenger for Python

.. image:: https://badgen.net/pypi/v/fbchat :target: https://pypi.python.org/pypi/fbchat :alt: Project version

.. image:: https://badgen.net/badge/python/3.5,3.6,3.7,3.8,pypy?list=| :target: https://pypi.python.org/pypi/fbchat :alt: Supported python versions: 3.5, 3.6, 3.7, 3.8 and pypy

.. image:: https://badgen.net/pypi/license/fbchat :target: https://github.com/carpedm20/fbchat/tree/master/LICENSE :alt: License: BSD 3-Clause

.. image:: https://readthedocs.org/projects/fbchat/badge/?version=stable :target: https://fbchat.readthedocs.io :alt: Documentation

.. image:: https://badgen.net/travis/carpedm20/fbchat :target: https://travis-ci.org/carpedm20/fbchat :alt: Travis CI

.. image:: https://badgen.net/badge/code%20style/black/black :target: https://github.com/ambv/black :alt: Code style

A powerful and efficient library to interact with Facebook's Messenger <https://www.facebook.com/messages/>__, using just your email and password.

This is not an official API, Facebook has that over here <https://developers.facebook.com/docs/messenger-platform>__ for chat bots. This library differs by using a normal Facebook account instead.

fbchat currently support:

Essentially, everything you need to make an amazing Facebook bot!

Version Warning

v2 is currently being developed at the master branch and it's highly unstable. If you want to view the old v1, go here <https://github.com/carpedm20/fbchat/tree/v1>__.

Additionally, you can view the project's progress here <https://github.com/carpedm20/fbchat/projects/2>__.

Caveats

fbchat works by imitating what the browser does, and thereby tricking Facebook into thinking it's accessing the website normally.

However, there's a catch! Using this library may not comply with Facebook's Terms Of Service!, so be responsible Facebook citizens! We are not responsible if your account gets banned!

Additionally, the APIs the library is calling is undocumented! In theory, this means that your code could break tomorrow, without the slightest warning! If this happens to you, please report it, so that we can fix it as soon as possible!

.. inclusion-marker-intro-end .. This message doesn't make sense in the docs at Read The Docs, so we exclude it

With that out of the way, you may go to Read The Docs <https://fbchat.readthedocs.io/>__ to see the full documentation!

.. inclusion-marker-installation-start

Installation

.. code-block::

$ pip install fbchat

If you don't have pip <https://pip.pypa.io/>, this guide <http://docs.python-guide.org/en/latest/starting/installation/> can guide you through the process.

You can also install directly from source, provided you have pip>=19.0:

.. code-block::

$ pip install git+https://github.com/carpedm20/fbchat.git

.. inclusion-marker-installation-end

Example Usage

.. code-block::

import getpass
import fbchat
session = fbchat.Session.login("<email/phone number>", getpass.getpass())
user = fbchat.User(session=session, id=session.user_id)
user.send_text("Test message!")

More examples are available here <https://github.com/carpedm20/fbchat/tree/master/examples>__.

Maintainer

No one, see notice at the top.

Acknowledgements

This project was originally inspired by facebook-chat-api <https://github.com/Schmavery/facebook-chat-api>__.