Krukov / amocrm_api

Python amocrm API wrapper
MIT License
103 stars 55 forks source link

Как работать с либой? #84

Closed PawelTupikow closed 1 year ago

PawelTupikow commented 2 years ago

Подскажите пожалуйста как работать с filter? Мне нужно получить ВСЕ события за последние 12 часов.... Как мне это сделать?

Krukov commented 2 years ago

По идеи как-то так:

from datetime import datetime, timedelta
from amocrm.v2 import tokens, Event, filters

tokens.default_token_manager(
    client_id="xxx-xxx-xxxx-xxxx-xxxxxxx",
    client_secret="xxxx",
    subdomain="subdomain",
    redirect_url="https://xxxx/xx",
    storage=tokens.FileTokensStorage(),  # by default FileTokensStorage
)
tokens.default_token_manager.init(code="..very long code...", skip_error=True)
now = datetime.utcnow()
events = list(Event.objects.filter( filters=[filters.DateRangeFilter("created_at")(now-timedelta(days=7), now),] ))
PawelTupikow commented 2 years ago

contact = list(Contact.objects.filter( filters=[filters.DateRangeFilter("created_at")(now-timedelta(days=7), now),] )) contact Traceback (most recent call last): File "/usr/local/Cellar/python@3.9/3.9.13_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/code.py", line 90, in runcode exec(code, self.locals) File "", line 1, in File "/Users/ptupikow/gitproject/analytics/.venv/lib/python3.9/site-packages/amocrm/v2/model.py", line 40, in repr fields = [ File "/Users/ptupikow/gitproject/analytics/.venv/lib/python3.9/site-packages/amocrm/v2/model.py", line 41, in "{} = {}".format(field.name, getattr(self, attr)) File "/Users/ptupikow/gitproject/analytics/.venv/lib/python3.9/site-packages/amocrm/v2/model.py", line 40, in repr fields = [ File "/Users/ptupikow/gitproject/analytics/.venv/lib/python3.9/site-packages/amocrm/v2/model.py", line 41, in "{} = {}".format(field.name, getattr(self, attr)) File "/Users/ptupikow/gitproject/analytics/.venv/lib/python3.9/site-packages/amocrm/v2/fields.py", line 36, in get return self.on_get_instance(instance, data) File "/Users/ptupikow/gitproject/analytics/.venv/lib/python3.9/site-packages/amocrm/v2/fields.py", line 174, in on_get_instance return _ListData(data=value, model=self._model, manager=self._manager, instance=instance, links=self._links) File "/Users/ptupikow/gitproject/analytics/.venv/lib/python3.9/site-packages/amocrm/v2/fields.py", line 118, in _manager return self.__manager or self._model.objects AttributeError: 'NoneType' object has no attribute 'objects'

С событиями не более 50 событий за раз С контактами вообще такое не работает....

Krukov commented 2 years ago

с событиями проблема известная но я не знаю как ее побороть потому что скорее проблема на стороне амосрм

с контактами - попробуйте заимпортить просто Lead - может поможет - иначе прошу полностью код прислать

from amocrm.v2 import Lead