videoflo icon indicating copy to clipboard operation
videoflo copied to clipboard

I get this error when running new-video.py script.

Open arunshekher opened this issue 2 years ago • 5 comments

What could be the issue here, sorry I am very new to python. I get this error when running new-video.py script. The trello script card is updated with the video name and the directory camera and notes.txt is created inside the channel_name directory.

 new-video.py new-vid-title  -c channel_name
NOTE: set due date for 1 week from today
Traceback (most recent call last):
  File "/Users/user/Work-Area/Videoflo/videoflo/new-video.py", line 40, in <module>
    go()
  File "/Users/user/Work-Area/Videoflo/videoflo/new-video.py", line 38, in go
    add_tag('Script', idea.path, do_open=True)
  File "/Users/user/Work-Area/Videoflo/videoflo/flo/mactag.py", line 21, in add_tag
    mac_tag.add([tag], [path])
  File "/Users/user/Work-Area/Videoflo/venv/vf/lib/python3.10/site-packages/mac_tag/__init__.py", line 41, in add
    run(["-a"] + _tags(tags) + values.get(path))
  File "/Users/user/Work-Area/Videoflo/venv/vf/lib/python3.10/site-packages/values/__init__.py", line 22, in get
    if not _iterable(input) or _string(input):
  File "/Users/user/Work-Area/Videoflo/venv/vf/lib/python3.10/site-packages/values/__init__.py", line 8, in _iterable
    return isinstance(obj, collections.Iterable)
AttributeError: module 'collections' has no attribute 'Iterable'

arunshekher avatar Sep 25 '22 13:09 arunshekher

I am sorry I didn't create these tags in finder. I'll test it after creating them.

EDIT: Even after creating the tags Script, Film, Edit, Render, Upload, Backup and installing the 'mac_tag' python library with pip and 'tag' with brew and using the path mentioned in your blog post I get the error:

Traceback (most recent call last):
  File "/Users/user/videoflo/new-video.py", line 40, in <module>
    go()
  File "/Users/user/videoflo/new-video.py", line 38, in go
    add_tag('Script', idea.path, do_open=True)
  File "/Users/user/videoflo/flo/mactag.py", line 21, in add_tag
    mac_tag.add([tag], [path])
  File "/Users/user/env/vf/lib/python3.10/site-packages/mac_tag/__init__.py", line 41, in add
    run(["-a"] + _tags(tags) + values.get(path))
  File "/Users/user/env/vf/lib/python3.10/site-packages/values/__init__.py", line 22, in get
    if not _iterable(input) or _string(input):
  File "/Users/user/env/vf/lib/python3.10/site-packages/values/__init__.py", line 8, in _iterable
    return isinstance(obj, collections.Iterable)
AttributeError: module 'collections' has no attribute 'Iterable'

arunshekher avatar Sep 25 '22 16:09 arunshekher

Pull down the latest changes and see if you can run the same command now.

tonyflo avatar Sep 25 '22 17:09 tonyflo

Sure, I'll check and report back. Thank you for the quick fix.

arunshekher avatar Sep 25 '22 23:09 arunshekher

Did a:

cd ~/videoflo
git pull origin main
    
remote: Enumerating objects: 12, done.
remote: Counting objects: 100% (10/10), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 6 (delta 4), reused 6 (delta 4), pack-reused 0
Unpacking objects: 100% (6/6), 636 bytes | 70.00 KiB/s, done.
From https://github.com/tonyflo/videoflo
 * branch            main       -> FETCH_HEAD
   40a1485..6eaabac  main       -> origin/main
Updating 40a1485..6eaabac
Fast-forward
 flo/mactag.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

python new-video.py my-second-video -c pl

Seems to get the same error:

Traceback (most recent call last):
  File "/Users/user/videoflo/new-video.py", line 40, in <module>
    go()
  File "/Users/user/videoflo/new-video.py", line 38, in go
    add_tag('Script', idea.path, do_open=True)
  File "/Users/user/videoflo/flo/mactag.py", line 21, in add_tag
    mac_tag.add(tag, path)
  File "/Users/user/env/vf/lib/python3.10/site-packages/mac_tag/__init__.py", line 41, in add
    run(["-a"] + _tags(tags) + values.get(path))
  File "/Users/user/env/vf/lib/python3.10/site-packages/values/__init__.py", line 22, in get
    if not _iterable(input) or _string(input):
  File "/Users/user/env/vf/lib/python3.10/site-packages/values/__init__.py", line 8, in _iterable
    return isinstance(obj, collections.Iterable)
AttributeError: module 'collections' has no attribute 'Iterable'

Script tag is not getting added to the newly created video directory 'my-second-video'

arunshekher avatar Sep 26 '22 00:09 arunshekher

Hi Tony, I found another python library to create/add/remove/count/list finder tags that is standalone and doesn't have any other dependencies and I was able to test it out on my computer to create and add a tag and it worked. What do you think about it?

I used it like:

import macos_tags

path = "/Users/user/test"
macos_tags.add("hello-world", file=path)

Links: https://pypi.org/project/macos-tags/ https://github.com/dmkskn/macos-tags

EDIT: Think I didn't make myself clear so making this edit. Although I have only been able to produce the tag adding error of videoflo in a single x86 machine running macOS 12.5, I am fairly confident that I am doing the setup right. And I would like it to work without this error so I am proposing to use another library but I am not confident in myself with the current level of my python proficiency to submit a PR incorporating the new library for you review and consider adding to the codebase. Hope I made myself clear this time. I am not a native English speaker.

arunshekher avatar Sep 26 '22 11:09 arunshekher