Por el simple hecho de ahorrar tiempo a la hora de publicar en redes sociales, cree un pequeño programa en Python con ayuda de los Bots de Telegram. El programa funciona de la siguiente manera: «Mensaje» > Bot en Python (API Telegram Py > Facebook API Py) > «Facebook» > «Twitter». El programa es Open Source y funciona perfectamente en Linux, Windows y quizá OS X (Creo).
Instalación
Simplemente hay que clonar el repositorio de GitHub:
git clone https://github.com/XTickXIvanX/Telegram2FB.git
Instalamos los requerimientos:
pip install DictObject requests facebook-sdk
Creamos el Bot y obtenemos el token:
https://core.telegram.org/bots
Creamos una nueva app de Facebook:
https://developers.facebook.com/apps/
Una vez creada obtenemos nuestro access token en:
https://developers.facebook.com/tools/explorer/
Otorgamos los siguientes permisos al generarla:
Modificamos el archivo Run.py del programa y remplasamos los tres puntos de la variable API_KEY=»…» por el token de Telegram y los tres puntos de la variable graph = facebook.GraphAPI(access_token=’…’) por el token de Facebook.
Vinculamos nuestra cuenta de Twitter a Facebook para tuitear lo que publicamos en Facebook.
Ejecutamos el programa:
python Run.py
¡Ya esta!
Ahora solo queda abrir Telegram y enviar un mensaje(es) a nuestro Bot: ‘/publicar «Inserte aqui lo que desea publicar»‘.
Joder que genial.. Justo estaba buscando la forma de publicar en todas mis redes sociales al mismo tiempo 😀
A mi me es útil para ahorrar un poco de pasta cuando salgo de casa y no hay una red WiFi abierta D:
Hola, buen aporte, peroal intentar en MAcOS, con python 2.7.6, , tengo este error:
/Library/Python/2.7/site-packages/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
Ya lo solucione, faltaban algunas dependecias a instalar.
Perfecto! 😀 Si tienes alguno otro problema puedes reportarlo en https://github.com/XTickXIvanX/Telegram2FB/issues 😉
Como manejas para que no cualquiera pueda usar tu bot?
Facil. En la linea 38 modificas «/publicar» por «/loquequierasperoqueotronosepa», en la 40 modificas («/publicar «, «») por («/loquequierasperoqueotronosepa «, «») (El espacio es necesario).
Así nadie podrá utilizarlo mas que tu.
Saludos he seguido todos los pasos y al correr el script se cierra de una vez, este es el error:
Informacion del Bot: {u’ok’: True, u’result’: {u’username’: u’yacopy_bot’, u’first_name’: u’telegram2fb’, u’id’: my_id}}
{u’message’: {u’date’: 1439307530, u’text’: u’/publicar «Hello»‘, u’from’: {u’first_name’: nombre, u’last_name’: apellido, u’id’: id}
Traceback (most recent call last):
File «Run.py», line 43, in
graph.put_wall_post(message=pong1)
File «/usr/local/lib/python2.7/dist-packages/facebook.py», line 159, in put_wall_post
**attachment)
File «/usr/local/lib/python2.7/dist-packages/facebook.py», line 140, in put_object
post_args=data)
File «/usr/local/lib/python2.7/dist-packages/facebook.py», line 297, in request
response = _parse_json(e.read())
File «/usr/lib/python2.7/dist-packages/simplejson/__init__.py», line 488, in loads
return _default_decoder.decode(s)
File «/usr/lib/python2.7/dist-packages/simplejson/decoder.py», line 370, in decode
obj, end = self.raw_decode(s)
File «/usr/lib/python2.7/dist-packages/simplejson/decoder.py», line 389, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
simplejson.scanner.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Excelente…
Necesito un bot para publicar desde Telegram en Twitter
Esto me permitiria publicar en facebook, linkedin, y demas redes sociales? o no me enterado para que sirve…
Linux lo domino bastante.