ubc-systopia / Indaleko

Indaleko Project
GNU Affero General Public License v3.0
0 stars 1 forks source link

ICloud indexer error #59

Open fsgeek opened 1 month ago

fsgeek commented 1 month ago

After merging the iCloud indexer script I tried running it and received the following error:

(wam) PS C:\Users\TonyMason\source\repos\indaleko-test> py .\IndalekoICloudIndexer.py --help
ic| log_file_name: 'indaleko-plt=iCloud-svc=indexer-ts=2024_08_10T19#56#22.661652+00#00.log'
Enter your iCloud username (or press Enter to select from the list above): *****@gmail.com
Enter your iCloud password:
Traceback (most recent call last):
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 312, in <module>
    main()
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 274, in main
    indexer = IndalekoICloudIndexer(timestamp=timestamp)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 52, in __init__
    self.query_user_for_credentials()
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 116, in query_user_for_credentials
    self._store_credentials(user_id, password)
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 126, in _store_credentials
    self.auth_logger.debug(f"Stored credentials for {username}")
    ^^^^^^^^^^^^^^^^
AttributeError: 'IndalekoICloudIndexer' object has no attribute 'auth_logger'

This script is new, so I don't think this is a merge-related issue.

fsgeek commented 1 month ago

I commented out the four calls to auth_logger and made some progress, but I ended up with a zero length data file. Maybe that's because there isn't anything, but the script doesn't provide me with any output.

fsgeek commented 1 month ago

Good grief this is some strange behavior:

(wam) PS C:\Users\TonyMason\source\repos\indaleko-test> py .\IndalekoICloudIndexer.py
ic| log_file_name: 'indaleko-plt=iCloud-svc=indexer-ts=2024_08_10T20#11#57.728810+00#00.log'
Enter your iCloud username (or press Enter to select from the list above): mason@pigdaddypro.com
Enter your iCloud password:
Traceback (most recent call last):
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 312, in <module>
    main()
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 274, in main
    indexer = IndalekoICloudIndexer(timestamp=timestamp)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 52, in __init__
    self.query_user_for_credentials()
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 116, in query_user_for_credentials
    self._store_credentials(user_id, password)
  File "C:\Users\TonyMason\source\repos\indaleko-test\IndalekoICloudIndexer.py", line 126, in _store_credentials
    self.auth_logger.debug(f"Stored credentials for {username}")
    ^^^^^^^^^^^^^^^^
AttributeError: 'IndalekoICloudIndexer' object has no attribute 'auth_logger'
(wam) PS C:\Users\TonyMason\source\repos\indaleko-test> py .\IndalekoICloudIndexer.py
ic| log_file_name: 'indaleko-plt=iCloud-svc=indexer-ts=2024_08_10T20#13#22.953611+00#00.log'
Enter your iCloud username (or press Enter to select from the list above): *****@********.com
ic| self.record: {'Attributes': {},
                  'Data': 'xAJ7fQ==',
                  'SourceIdentifier': {'Identifier': 'c3e03488-660c-42f5-8277-1c8073fb2144',
                                       'Version': '1.1'},
                  'Timestamp': '2024-08-10T20:09:07.110763+00:00'}
Enter your iCloud username (or press Enter to select from the list above): *****@********.com
Enter your iCloud username (or press Enter to select from the list above): *****@********.com
Enter the code you received on one of your approved devices: 913489
(wam) PS C:\Users\TonyMason\source\repos\indaleko-test> ls data\*cloud*

    Directory: C:\Users\TonyMason\source\repos\indaleko-test\data

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----         8/10/2024   1:14 PM           2192 indaleko-plt=iCloud-svc=indexer-user_id=*****@********.com-ts=2024_08_10T20#13#22.952606+00#00.jsonl
-a----         8/10/2024   1:10 PM              0 indaleko-plt=iCloud-svc=indexer-user_id=*******@gmail.com-ts=2024_08_10T20#09#31.957305+00#00.jsonl

I'm not sure why it failed on first invocation (that line was, literally, commented out). But the script asked me for my identity info multiple times before I was able to go through the authentication flow.

This time I did get some data output, so that's good.

fsgeek commented 1 month ago

@ZeeOneOtter - you may have some insight here.