--- title: Query keywords: fastai sidebar: home_sidebar nb_path: "nbs/exporters.exporters.ipynb" ---
{% raw %}
{% endraw %} {% raw %}

class Query[source]

Query(*properties:List[str])

{% endraw %} {% raw %}
{% endraw %}

Tests

Example usage

For example, if we have a list of Messages and we want to get message content, the accompanying account handles and account owner names, we can query:

{% raw %}
messages = client.search({"type": "Message", "service": "my_service"})
query = Query("content", "sender.handle", "sender.owner.firstName")
query.execute(client, messages, dtype="pandas")
content sender.handle sender.owner.firstName
0 content_7 None None
1 content_5 None None
2 content_0 None None
3 content_3 account_3 firstname_3
4 content_4 account_4 firstname_4
5 content_6 account_6 None
6 content_9 account_9 firstname_9
7 content_1 account_1 firstname_1
8 content_2 account_2 firstname_2
9 content_8 account_8 firstname_8
{% endraw %} {% raw %}
q = Query("content", "label.name", "sender.owner.firstName", "sender.handle", "wrong_property")
result = q.execute(client, messages)
result
{'content': ['content_7',
  'content_5',
  'content_0',
  'content_3',
  'content_4',
  'content_6',
  'content_9',
  'content_1',
  'content_2',
  'content_8'],
 'label.name': [None, None, None, None, None, None, None, None, None, None],
 'sender.owner.firstName': [None,
  None,
  None,
  'firstname_3',
  'firstname_4',
  None,
  'firstname_9',
  'firstname_1',
  'firstname_2',
  'firstname_8'],
 'sender.handle': [None,
  None,
  None,
  'account_3',
  'account_4',
  'account_6',
  'account_9',
  'account_1',
  'account_2',
  'account_8'],
 'wrong_property': [None,
  None,
  None,
  None,
  None,
  None,
  None,
  None,
  None,
  None]}
{% endraw %} {% raw %}
q = Query("content", "label.name", "sender.owner.firstName", "sender.handle")
result = q.execute(client, messages, dtype="pandas")
result.head()
content label.name sender.owner.firstName sender.handle
0 content_0 label_0 firstname_0 account_0
1 content_1 label_1 firstname_1 account_1
2 content_2 None None account_2
3 content_3 None firstname_3 account_3
4 content_4 label_4 firstname_4 account_4
{% endraw %}