wlevine / clamz

Command-line downloader for Amazon MP3
GNU General Public License v3.0
2 stars 0 forks source link

clamz does not work on Ubuntu Lucid #18

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Ran the command 'clamz AmazonMP3-<filename>.amz in a terminal
2.
3.

What is the expected output? What do you see instead?
I would expect to see '1 of 1 AMZ files downloaded successfully.'
I get the message '...ERROR: Error downloading file: HTTP response code
said error
0 of 1 AMZ files downloaded successfully.'
The .amz file was not converted

What version of the product are you using? On what operating system?
I am using clamz 0.3 on Ubuntu lucid (Ubuntu 10.04 (64 bit))

Please provide any additional information below.
Clamz worked fine in Ubuntu karmic (Ubuntu 9.10 (64 bit))

Original issue reported on code.google.com by cm006a50...@gtempaccount.com on 8 Apr 2010 at 11:04

GoogleCodeExporter commented 9 years ago
I'm sorry to hear this.  I don't have any idea what might be going wrong here
(obviously, there are many possibilities.)  If you run 'clamz -i' on the file, 
it
will print out detailed information, including the URL for each track.  You can 
then
try downloading those URLs using a web browser, or some other tool such as 
wget.  I'd
be very interested to know if a web browser works and clamz doesn't.

It's possible, though I don't think it's likely, that the problem is due to 
something
I changed between clamz 0.2 and 0.3; have you tried using clamz 0.2?

If you wouldn't mind doing some more testing to narrow down the problem, I would
really appreciate it!  Amazon usually has a few songs available for free, so 
you may
want to use those for testing.

It occurs to me that I probably ought to provide more detailed error messages 
in this
case.  Sorry about that.

Original comment by Benjamin...@gmail.com on 11 Apr 2010 at 1:22

GoogleCodeExporter commented 9 years ago
Benjamin

Firstly, let me say that there is no basic problem with clamz 0.3, it works 
well in
Ubuntu Karmic (9.10), it only has problems with Ubuntu Lucid (10.04).
As requested, I ran clamz -i <filename>.amz (a free download track) and got:-
'/home/colin/Music/AmazonMP3-1270390320.amz' 
Playlist: /home/colin/Music/AmazonMP3-1270390320.amz
* Title:    AmazonMP3 Purchase
* Creator:  AmazonMP3
* 'http://www.amazon.com/dmusic/softwareVersion' = (null)

  Track 1:
  - URL:           http://www.amazon.co.uk/........
  - Title:         One Time
  - Creator:       Justin Bieber
  - Album:         *
  - Image:         https://images-na.ssl-images-amazon.com/images/I/*.jpg
  - Duration:      407000
  - Track Number:  1
  - File Type:     mp3
  - Album Artist:  Justin Bieber
  - Album ASIN:    B003CVZ8BU
  - Disc Number:   1
  - File Size:     12780277
  - Genre:         Pop
  - Product Type:  DOWNLOADABLE_MUSIC_TRACK
  - ASIN:          B003CVV48Q
  Output to "01 - *.mp3"

I replace the URL in this note with ................ and the title with *, just 
for
this note (for obvious reasons).

I also tried using wget with the same URL and it appeared to find the URL and 
gave me
some information on the track, but download permission was denied.

I also have the following when running clamz <filename>.amz:-
clamz AmazonMP3-*.amz
Downloading "01 - *.mp3"
ERROR: Error downloading file: HTTP response code said error

ERROR: Error downloading file: HTTP response code said error

ERROR: Error downloading file: HTTP response code said error

ERROR: Error downloading file: HTTP response code said error

ERROR: Error downloading file: HTTP response code said error

0 of 1 AMZ files downloaded successfully.

Again I have deliberately hidden the .amz file name and the .mp3 song filename

Hope this helps

Original comment by cm006a50...@gtempaccount.com on 12 Apr 2010 at 2:33

GoogleCodeExporter commented 9 years ago
OK, I tried it with Ubuntu 10.04 beta 2 and had no problems.  I'm guessing 
there's
something different on the server side - and unfortunately, since I'm in the US,
Amazon won't let me download songs from their UK servers.  (Presumably this 
works in
the other direction too, and they wouldn't let you download from their US 
servers.)

But this doesn't explain why you'd see anything different between the two 
releases of
Ubuntu.  Comparing the two versions of libcurl (7.19.5-1ubuntu2 and 
7.19.7-1ubuntu1),
I don't see any changes that would be likely to make a difference (though I 
haven't
looked very hard, and I don't know much about libcurl's internals.)

Very strange!

Original comment by Benjamin...@gmail.com on 14 Apr 2010 at 8:09

GoogleCodeExporter commented 9 years ago
Here's a modified version of download.c which sets the curl "verbose" option, 
so it
will print out the full request that it sends to the server, as well as the 
server's
response.  (I may make this an option in future clamz releases, as it seems 
like a
good idea for times like this.)

At least for the US, the URL given in the amz file is for a script called
'log_action.mp3', which responds with a '302 Moved Temporarily' and redirects 
you to
the correct URL for the file.  The 'log_action' script also sets a few cookies 
(I'm
not sure if these are necessary, but clamz retains them for the session.)

Could you please try this out, and see precisely when the error occurs, and what
message the server is giving you?

(By the way, I don't know if there's any really private information in there, 
but I
completely understand if you don't want to post the full details.  Feel free to 
email
me if you prefer.  And thanks for your help so far.)

Original comment by Benjamin...@gmail.com on 15 Apr 2010 at 3:13

Attachments:

GoogleCodeExporter commented 9 years ago
Could you give me some instructions on what to with download.c? 

Original comment by cm006a50...@gtempaccount.com on 15 Apr 2010 at 9:00

GoogleCodeExporter commented 9 years ago
Replace the file 'download.c' in the clamz source with the modified version I
attached above.  Then re-compile clamz (make; sudo make install), and try 
downloading
a file with the modified version.  It should print out lots of detailed 
information
to the console (or, instead, you can save the output to a file by running 'clamz
foo.amz 2> foo.log'.)  Thanks.

Original comment by Benjamin...@gmail.com on 15 Apr 2010 at 7:40

GoogleCodeExporter commented 9 years ago
I have run clamz with the modified 'dpwnload.c' file, and attached is a copy of 
the
log file.

Original comment by cm006a50...@gtempaccount.com on 16 Apr 2010 at 9:09

Attachments:

GoogleCodeExporter commented 9 years ago
Thanks.  So Amazon is using the Limelight Networks CDN (llnwd.net) for 
distributing
the actual MP3 files, which is the same network that they use in the US.  It's 
the
llnwd.net server that's giving you the error, not the amazon.co.uk server.

From what I can tell, those servers give a '400 Bad Request' response to pretty 
much
anything they don't like, regardless of whether it's a properly formed HTTP 
request
or not.  So what don't they like here?  The Clamz user agent string?  An extra 
cookie
or a special header of some sort that's missing?

I don't know what User-Agent is used by the official MP3 downloader, or what its
requests look like; if somebody could find this out, it would be greatly 
appreciated.
 (I have used the User-Agent string "Clamz X.Y" in existing versions, as a courtesy
to Amazon, but if it turns out that they're actually blocking clients based on 
this,
I will change it.  Either that, or I'll simply stop buying from Amazon.)

(Also, I would like to know what a "Cneonction" is. :P)

Original comment by Benjamin...@gmail.com on 17 Apr 2010 at 1:43

GoogleCodeExporter commented 9 years ago
On a hunch that it might work, could you please try this version?  I'm sorry to 
make
you run all these tests, but I have no way of doing it myself.

Original comment by Benjamin...@gmail.com on 18 Apr 2010 at 7:29

Attachments:

GoogleCodeExporter commented 9 years ago
Great news, it works ! 

Congratulations, your hunch paid off. Clamz downloaded a free amazon album, 
with no
problem. Thanks for all your hard work.

Original comment by cm006a50...@gtempaccount.com on 19 Apr 2010 at 6:15

GoogleCodeExporter commented 9 years ago
Clamz 0.4 fixes this (hopefully!)  Thanks for your help, and please let me know 
if
you have any more problems.

Original comment by Benjamin...@gmail.com on 1 May 2010 at 3:55