Gmansolf / googlecl

Automatically exported from code.google.com/p/googlecl
0 stars 0 forks source link

Youtube Error: "Unknown authorization header" after a long upload time 4h #169

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. upload a big file (320mb) in my case a *.flv file 
2. damn slow upload ratio (20kb/s not kbit/s)
3. start jon with "at" command (don't think that this is a problem)

What is the expected output? What do you see instead?

i started th job at 10 in the morning and recived system mail at 13:56 with rhe 
following content:

Return-Path: <xxxx@eva.site>
X-Original-To: xxxx
Delivered-To: xxxx@eva.site
Received: by eva.site (Postfix, from userid 1000)
        id 5B62A37CE7; Thu, 24 Jun 2010 13:56:17 +0200 (CEST)
Subject: Output from your job       13
To: xxxx@eva.site
Message-Id: <20100624115617.5B62A37CE7@eva.site>
Date: Thu, 24 Jun 2010 13:56:17 +0200 (CEST)
From: xxxx@eva.site (xxxx Fuchs)

/usr/lib/python2.6/site-packages/gdata/tlslite/utils/cryptomath.py:9: 
DeprecationWarning: the sha module is deprecated; use the hashlib module instead
  import sha
Loading /srv/safe/Videos/Youtube/02_1.flv
Traceback (most recent call last):
  File "/usr/local/bin/google", line 463, in <module>
    main()
  File "/usr/local/bin/google", line 457, in main
    run_once(options, args)
  File "/usr/local/bin/google", line 356, in run_once
    task.run(client, options, args)
  File "/usr/local/lib/python2.6/site-packages/googlecl/youtube/service.py", line 217, in _run_post
    tags=options.tags, category=options.category)
  File "/usr/local/lib/python2.6/site-packages/googlecl/youtube/service.py", line 129, in post_videos
    self.InsertVideoEntry(video_entry, path)
  File "/usr/lib/python2.6/site-packages/gdata/youtube/service.py", line 656, in InsertVideoEntry
    raise YouTubeError(e.args[0])
gdata.youtube.service.YouTubeError: {'status': 401, 'body': 'Unknown 
authorization header', 'reason': 'Unauthorized'}

What version of the product are you using? On what operating system? What
version of gdata-python-client (aka python-gdata)?

current version: googlecl-0.9.7.tar.gz
os: openSuse 11.2

Please provide any additional information below.

i tested a *.mov file with about 2mb and it works nice even with a created job.

Original issue reported on code.google.com by admin.fu...@googlemail.com on 24 Jun 2010 at 4:35

GoogleCodeExporter commented 8 years ago
Issue 179 has been merged into this issue.

Original comment by tom.h.mi...@gmail.com on 28 Jun 2010 at 2:39

GoogleCodeExporter commented 8 years ago
I have this same issue while trying to upload a 203MB AVI (all my AVI are 
between 200 and 400MB).  I was able to successfully upload a 1.8MB AVI without 
any trouble.  Running from the command line, took about 15 minutes before that 
error was returned.

> What version of the product are you using? 
googlecl 0.9.7

> On what operating system? 
Ubuntu 6.06.2 LTS

> What version of gdata-python-client (aka python-gdata)?
Python 2.6.5
gdata 2.0.10

Original comment by illinois...@gmail.com on 28 Jun 2010 at 11:58

GoogleCodeExporter commented 8 years ago
Sorry that youtube support hasn't been getting much love lately.

Could everyone apply the attached patch? (Should be good for 0.9.7 and 0.9.8) 
It will make youtube spit out all the details on its requests. Please attach a 
file that contains the output from a failed upload/post command.

(Note: This will make your shell fill up with text pretty quickly, so you may 
want to redirect output to a file from the start. For anyone that doesn't know, 
you can do that by adding `> output_file.txt` to the end of the command you use)

Original comment by tom.h.mi...@gmail.com on 30 Jun 2010 at 8:46

Attachments:

GoogleCodeExporter commented 8 years ago
I'm also having this problem when uploading a 412MB movie to youtube. I've 
applied the patch. The output file is 1.2GB, so it's impossible to attach. 

Here are the first lines of output:

connect: (gdata.youtube.com, 80)
send: 'GET 
http://gdata.youtube.com/feeds/api/users/default/uploads?max-results=1 
HTTP/1.1\r\nAccept-Encoding: identity\r\nHost: 
gdata.youtube.com\r\nContent-Type: application/atom+xml\r\nX-Gdata-Client: 
GoogleCL\r\nAuthorization: OAuth realm="", oauth_nonce="17671922", 
oauth_timestamp="1278601756", oauth_consumer_key="anonymous", 
oauth_signature_method="HMAC-SHA1", oauth_version="1.0", 
oauth_token="1%2FGc6SYoRzLPU7qR16QKcOQo6sDFflmnkDODJtrd5fwhE", 
oauth_signature="UwwRfzrERFrbW4JBXyZMhxln%2B2Q%3D"\r\nUser-Agent: GoogleCL 
GData-Python/2.0.10\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: X-GData-User-Country: BE
header: Content-Type: application/atom+xml; charset=UTF-8
header: Expires: Thu, 08 Jul 2010 15:09:17 GMT
header: Date: Thu, 08 Jul 2010 15:09:17 GMT
header: Cache-Control: private, max-age=0, must-revalidate, no-transform
header: Vary: *
header: GData-Version: 1.0
header: Last-Modified: Thu, 08 Jul 2010 15:09:17 GMT
header: Transfer-Encoding: chunked
header: X-Content-Type-Options: nosniff
header: X-Frame-Options: SAMEORIGIN
header: X-XSS-Protection: 1; mode=block
header: Server: GSE
Loading /share/Movies/2010/07 juli/20100706205929.m2ts
connect: (uploads.gdata.youtube.com, 80)
send: 'POST http://uploads.gdata.youtube.com/feeds/api/users/default/uploads 
HTTP/1.1\r\nAccept-Encoding: identity\r\nHost: 
uploads.gdata.youtube.com\r\nContent-Length: 432144911\r\nX-Gdata-Client: 
GoogleCL\r\nUser-Agent: GoogleCL GData-Python/2.0.10\r\nX-GData-Key: 
key=AI39si4d9dBo0dX7TnGyfQ68bNiKfEeO7wORCfY3HAgSStFboTgTgAi9nQwJMfMSizdGIs35W9wV
GkygEw8ei3_fWGIiGSiqnQ\r\nContent-Type: multipart/related; 
boundary=END_OF_PART\r\nSlug: 20100706205929.m2ts\r\nAuthorization: OAuth 
realm="", oauth_nonce="39943710", oauth_timestamp="1278601757", 
oauth_consumer_key="anonymous", oauth_signature_method="HMAC-SHA1", 
oauth_version="1.0", 
oauth_token="1%2FGc6SYoRzLPU7qR16QKcOQo6sDFflmnkDODJtrd5fwhE", 
oauth_signature="JoQDfDXDKFqE1amSqoah46rw%2Blk%3D"\r\nMIME-version: 1.0\r\n\r\n'
send: 'Media multipart posting\r\n--END_OF_PART\r\nContent-Type: 
application/atom+xml\r\n\r\n'
send: '<?xml version=\'1.0\' encoding=\'UTF-8\'?>\n<ns0:entry 
xmlns:ns0="http://www.w3.org/2005/Atom"><ns1:group 
xmlns:ns1="http://search.yahoo.com/mrss/"><ns1:keywords /><ns1:description>A 
video</ns1:description><ns1:title>20100706205929</ns1:title><ns1:category 
label="Nonprofit" 
scheme="http://gdata.youtube.com/schemas/2007/categories.cat">Nonprofit</ns1:cat
egory></ns1:group></ns0:entry>'
send: '\r\n--END_OF_PART\r\nContent-Type: video/quicktime\r\n\r\n'
send: 
'\x00\x00\x00\x00G@\x00\x10\x00\x00\xb0\x11\x00\x00\xc1\x00\x00\x00\x00\xe0\x1f\
x00\x01\xe1\x00#Z\xab\x82\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x08\xd0GA\x00\x10\x00\x02\xb0>\x00
\x01\xc1\x00\x00\xf0\x01\xf0\x0c\x05\x04HDMV\x88\x04\x0f\xff\xfc\xfc\x1b\xf0\x11
\xf0\n\x05\x08HDMV\xff\x1bC?\x81\xf1\x00\xf0\x0c\x05\x04AC-3\x81\x04\x040\x04\x0
0\x90\xf2\x00\xf0\x00\x0c\xd3\xf4\xdc\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf
f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff...

Here are the last lines of output:

...
send: '\r\n--END_OF_PART--\r\n'
reply: 'HTTP/1.1 401 Unauthorized\r\n'
header: Server: Upload Server Built on Jul 1 2010 15:26:59 (1278023219)
header: X-GData-User-Country: BE
header: WWW-Authenticate: GoogleLogin 
service="youtube",realm="https://www.google.com/youtube/accounts/ClientLogin"
header: Content-Type: text/html; charset=UTF-8
header: Content-Length: 28
header: Date: Thu, 08 Jul 2010 17:27:30 GMT
header: Pragma: no-cache
header: Expires: Fri, 01 Jan 1990 00:00:00 GMT
header: Cache-Control: no-cache, no-store, must-revalidate

Hope this can be fixed soon. I guess it's a timeout problem because the upload 
takes more then 2 hours.

Original comment by mrtn...@gmail.com on 9 Jul 2010 at 8:00

GoogleCodeExporter commented 8 years ago
Great! That's really useful. Thanks for dedicating 1.2 GB of your hard drive to 
solving this problem. :)

Can you attach a file that contains the first 100 and last 100 lines of the 
output? I'd like to look at a couple more transmissions.

Original comment by tom.h.mi...@gmail.com on 9 Jul 2010 at 2:40

GoogleCodeExporter commented 8 years ago
The other transmissions are all binary data. I've attached the first and last 
5MB of the log.

Original comment by mrtn...@gmail.com on 9 Jul 2010 at 2:56

Attachments:

GoogleCodeExporter commented 8 years ago
Thanks!

This seems like an issue with the library, so I created an issue at 
http://code.google.com/p/gdata-python-client/issues/detail?id=408 using the 
data that mrtncls provided.

Please go star the issue and list your OS, gdata version, and anything else 
that seems relevant. Hopefully someone will take notice quickly.

Original comment by tom.h.mi...@gmail.com on 10 Jul 2010 at 2:32

GoogleCodeExporter commented 8 years ago

Original comment by tom.h.mi...@gmail.com on 23 Jul 2010 at 11:38

GoogleCodeExporter commented 8 years ago
I've filed a new issue here: 
http://code.google.com/a/google.com/p/apps-api-issues/issues/detail?id=2304

This problem seems to extend past the python client library, so that's the 
appropriate place for this issue.

Please post on the new issue with any relevant details you can think of -- 
video size, type of video, OS, whatever. Headers from the initial POST message 
and final server response might help. I've already included the details from 
mrtncls in the issue creation.

Original comment by thmil...@google.com on 1 Nov 2010 at 7:14

GoogleCodeExporter commented 8 years ago
Have you tried Allavsoft?
As far as I know, it can directly download YouTube videos to AVI and it also 
can convert already downloaded YouTube videos to AVI.

You may get it at http://www.allavsoft.com/how-to/convert-youtube-to-avi.html

Original comment by cheerful...@gmail.com on 1 Aug 2015 at 2:10