2017-05-02 1 views
1

J'INSTALLÉ facebookads selon la README.md (https://github.com/facebook/facebook-python-ads-sdk)facebook-python-ads-sdk - ImportError: ne peut pas importer le nom des 'objets'

pip3 install facebookads 

Alors j'ai essayé d'importer facebookads dans mon code python selon le fichier README.md.

from facebookads.api import FacebookAdsApi 
from facebookads import objects 

l'erreur suivante est apparu

Traceback (most recent call last): 
    File "generate_facebook_campaigns.py", line 2, in <module> 
    from facebookads import objects 
ImportError: cannot import name 'objects' 

J'ai aussi essayé clone git et a couru le setup.py pour installer le module, mais le résultat était le même.

Comment puis-je supprimer cette erreur?

versions: python, pépin 9.0.1 3.5.2, 2.9.1 facebookads

Répondre

4

Il semble que les nouvelles versions 2.8.2 (19 jours) et 2.9.1 (8 jours) introduit cette importation Erreur. Utiliser la version 2.8.1 ne me donne pas cette erreur:

$ pip install -I facebookads==2.8.1 
... 
$ python 
>>> from facebookads import objects 
>>> 

Ils pourraient avoir changé la bibliothèque sans changer la documentation. Le fichier objects.py qui existait dans les anciennes versions semble être have been removed. Le haut du fichier avait le examplanation:

-This file is kept for backward compatibility. 
-Please use objects in adobjects folder instead. 

Ainsi, dans la nouvelle importation se présente comme suit:

from facebookads.adobjects.<file> import <object> 
# or 
from facebook.adobjects import <file> 
<file>.<object> 

En regardant l'ancien fichier objects.py nous montre quel fichier et l'objet dont nous avons besoin. Par exemple pour l'ancien objet objects.Campaign nous utilisons le suivant campaign.Campaign objet:

from facebookads.adobjects import campaign 
c = campaign.Campaign(...)