aboutsummaryrefslogtreecommitdiffstats
path: root/youtube/post_comment.py
diff options
context:
space:
mode:
authorJames Taylor <user234683@users.noreply.github.com>2019-12-19 15:50:19 -0800
committerJames Taylor <user234683@users.noreply.github.com>2019-12-19 15:50:19 -0800
commitbeb0976b5bc09a053d027a6e7020bb3a83f4aca1 (patch)
tree3208aaa71a26457ee17cdb580de464aa108377f9 /youtube/post_comment.py
parent02848a1a3213bb4ad872865768a7b97f663a24ed (diff)
downloadyt-local-beb0976b5bc09a053d027a6e7020bb3a83f4aca1.tar.lz
yt-local-beb0976b5bc09a053d027a6e7020bb3a83f4aca1.tar.xz
yt-local-beb0976b5bc09a053d027a6e7020bb3a83f4aca1.zip
Extraction: Rewrite comment extraction, remove author_id and rename author_channel_id to that, fix bug in extract_items
author_id (an internal sql-like integer previously required for deleting and editing comments) has been removed by Youtube and is no longer required. Remove it for simplicity. Rename author_channel_id to author_id for consistency with other extraction attributes. extract_items returned None for items instead of [] for empty continuation responses. Fixes that.
Diffstat (limited to 'youtube/post_comment.py')
-rw-r--r--youtube/post_comment.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/youtube/post_comment.py b/youtube/post_comment.py
index 25d0e3a..78f080f 100644
--- a/youtube/post_comment.py
+++ b/youtube/post_comment.py
@@ -70,7 +70,7 @@ def _post_comment_reply(text, video_id, parent_comment_id, session_token, cookie
print("Comment posting code: " + code)
return code
-def _delete_comment(video_id, comment_id, author_id, session_token, cookiejar):
+def _delete_comment(video_id, comment_id, session_token, cookiejar):
headers = {
'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1',
'Accept': '*/*',
@@ -79,7 +79,7 @@ def _delete_comment(video_id, comment_id, author_id, session_token, cookiejar):
'X-YouTube-Client-Version': '2.20180823',
'Content-Type': 'application/x-www-form-urlencoded',
}
- action = proto.uint(1,6) + proto.string(3, comment_id) + proto.string(5, video_id) + proto.string(9, author_id)
+ action = proto.uint(1,6) + proto.string(3, comment_id) + proto.string(5, video_id)
action = proto.percent_b64encode(action).decode('ascii')
sej = json.dumps({"clickTrackingParams":"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=","commandMetadata":{"webCommandMetadata":{"url":"/service_ajax","sendPost":True}},"performCommentActionEndpoint":{"action":action}})
@@ -115,7 +115,7 @@ def delete_comment():
cookiejar = accounts.account_cookiejar(request.values['channel_id'])
token = get_session_token(video_id, cookiejar)
- code = _delete_comment(video_id, request.values['comment_id'], request.values['author_id'], token, cookiejar)
+ code = _delete_comment(video_id, request.values['comment_id'], token, cookiejar)
if code == "SUCCESS":
return flask.redirect(util.URL_ORIGIN + '/comment_delete_success', 303)
@@ -147,7 +147,7 @@ def post_comment():
@yt_app.route('/delete_comment', methods=['GET'])
def get_delete_comment_page():
- parameters = [(parameter_name, request.args[parameter_name]) for parameter_name in ('video_id', 'channel_id', 'author_id', 'comment_id')]
+ parameters = [(parameter_name, request.args[parameter_name]) for parameter_name in ('video_id', 'channel_id', 'comment_id')]
return flask.render_template('delete_comment.html', parameters = parameters)