Add option to disable comments on Peertube (Youtube has no option in API to do that)

This commit is contained in:
LecygneNoir 2018-03-12 09:35:25 +01:00
parent 2abcf711b8
commit 4be4a1727e
4 changed files with 15 additions and 7 deletions

1
.gitignore vendored
View file

@ -23,6 +23,7 @@ var/
*.egg-info/
.installed.cfg
*.egg
.idea
# PyInstaller
# Usually these files are written by a python script from a template

View file

@ -34,6 +34,7 @@ Options:
-c, --category=STRING Category for the videos, see below. [ default: Films]
--cca License should be CreativeCommon Attribution (affects Youtube upload only)
-p, --privacy=STRING Choose between public, unlisted or private. [default: private]
--disable-comments Disable comments (Peertube only) [default: comments are enabled]
-h --help Show this help.
--version Show version.
@ -57,7 +58,7 @@ Categories:
- [x] categories
- [x] license: cca or not, affect only Youtube as Peertube uses Attribution by design
- [x] privacy (between public, unlisted or private)
- [ ] enabling/disabling comment
- [x] enabling/disabling comment (Peertube only as Youtube API has no option for that)
- [ ] nsfw
- [ ] thumbnail/preview
- [ ] Use a config file (NFO) file to retrieve videos arguments

View file

@ -17,7 +17,7 @@ PEERTUBE_SECRETS_FILE = 'peertube_secret'
PEERTUBE_PRIVACY = {
"public": 1,
"unlisted": 2,
"private:": 3
"private": 3
}
@ -65,7 +65,6 @@ def upload_video(oauth, config, options):
("description", options.get('--description') or "default description"),
# look at the list numbers at /videos/privacies
("nsfw", "0"),
("commentsEnabled", "1"),
("channelId", get_userinfo()),
("videofile", get_videofile(path))
]
@ -86,6 +85,11 @@ def upload_video(oauth, config, options):
else:
fields.append(("privacy", "3"))
if options.get('--disable-comments'):
fields.append(("commentsEnabled", "0"))
else:
fields.append(("commentsEnabled", "1"))
multipart_data = MultipartEncoder(fields)
headers = {
@ -114,6 +118,6 @@ def run(options):
upload_video(oauth, config, options)
except Exception as e:
if hasattr(e, 'message'):
print(e.message)
print("Error: " + e.message)
else:
print(e)
print("Error: " + e)

View file

@ -15,7 +15,8 @@ Options:
-t, --tags=STRING Tags for the video. comma separated
-c, --category=STRING Category for the videos, see below. [ default: Films]
--cca License should be CreativeCommon Attribution (affects Youtube upload only)
-p, --privacy=STRING Choose between public, unlisted or private. [default: private]
-p, --privacy=STRING Choose between public, unlisted or private. [default: private]
--disable-comments Disable comments (Peertube only) [default: comments are enabled]
-h --help Show this help.
--version Show version.
@ -95,6 +96,7 @@ if __name__ == '__main__':
Optional('--category'): Or(None, And(str, validateCategory, error="Category not recognized, please see --help")),
Optional('--privacy'): Or(None, And(str, validatePrivacy, error="Please use recognized privacy between public, unlisted or private")),
Optional('--cca'): bool,
Optional('--disable-comments'): bool,
'--help': bool,
'--version': bool
})
@ -104,5 +106,5 @@ if __name__ == '__main__':
except SchemaError as e:
exit(e)
yt_upload.run(options)
# yt_upload.run(options)
pt_upload.run(options)