Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Amazon (https://www.delphipraxis.net/58331-amazon.html)

LH_Freak 5. Dez 2005 19:13

Re: Amazon
 
Müssten die Rechte der Bilder normal nicht den Herstellern der CD gehören? ^^

zecke 5. Dez 2005 19:15

Re: Amazon
 
Sicher, aber wenn Amazon die verwendet müssen die wohl mit eben diesen Herstellern etwas abgemacht haben. auch hier passt :
Zitat:

sie werden irgendjemand dafür was gegeben haben müssen oder eine Erlaubnis bekommen haben oder oder oder

LH_Freak 5. Dez 2005 19:25

Re: Amazon
 
Also:

beim englischen Amazon kann man sich für den Webservice registrieren.
Und die Ergibnisse erhält man dann so:

Zitat:

http://xml.amazon.com/onca/xml3?t=we...KeywordSearch=Searchstring&mode=music&type=heavy&locale=de&page=1&f=xml
Bleibt nur die Frage, ob ich das auch verwenden darf.

CalganX 5. Dez 2005 19:37

Re: Amazon
 
Ähm... Übersehen oder gehst du absichtlich nicht auf meinen Hinweis ein?
Wenn du Namen und Interpret einer CD hast, kannst du in der Bei Google suchenCDDB suchen.

Machen Tools, wie iTunes, CDex, uvm. ebenfalls.

Chris

LH_Freak 5. Dez 2005 19:41

Re: Amazon
 
Neee, ich hab deinen Beitrag schon gesehen. Nur bei CDDB (falls du http://www.gracenote.com meinst) kriege ich keine CD Covers, und das ist ja eigentlich das was ich will ;)
Wenn ich diese übersehen hab, dann weißt mich bitte darauf hin :D

Cylence 12. Jan 2009 12:57

Re: Amazon
 
Hi,

also falls es jemand interessiert *g* so geht das:

erstmal anmelden bei amazonservices wie weiter oben schon beschrieben und dann so suchen und runterladen:

Delphi-Quellcode:
   

const URLString = 'http://webservices.amazon.de/onca/xml?Service=AWSECommerceService&AWSAccessKeyId='+ YOURAMAZONID +
               + '&AssociateTag=&Operation=ItemSearch&SearchIndex=Music&Keywords=';
             
function TForm1.GetCoverFromAmazon(KeyWords: string): Boolean;
var
  PICString : String;
  TestFile: PChar;
  lStream: TFileStream;
  ConnectionOK : Boolean;
  fa: TFileAttributes;
  Picfoundandloaded : Boolean;
  i : Integer;
begin
 try
    if not assigned(XidHTTP) then XidHTTP := TIdhttp.Create(Nil);
  Result := False;
  if Keywords = '' then begin
     Result := False;
     Exit;
  end;
  //Suchen
  if Fileexists(PrgPfad + 'temp\actualTitle.txt') then deletefile(PrgPfad + 'temp\actualTitle.txt');
     ConnectionOK := True;
     lStream:=TFileStream.Create(PrgPfad + 'temp\actualTitle.txt', fmCreate or fmShareDenyNone);
     try
       //Suchergebnis Seite von amazon runterladen
       XidHTTP.Get(URLString + Keywords + '&ResponseGroup=Medium', lStream);
     except
       ConnectionOK := False;
     end;
    lStream.Free;
  //Suchergebnis durchchecken
  if ConnectionOK then begin
   if Fileexists(PrgPfad + 'temp\actualTitle.txt') then begin
     FXMLFile := TStringList.Create;
      FXMLFile.LoadFromFile(PrgPfad + 'temp\actualTitle.txt');
      PICString := SearchinXML;
      PICString := trim(PICString);
     FXMLFile.Free;
   end;
  end;
  if PICString = '' then begin
     Result := False;
     Exit;
  end;  
  //File runterladen
  if Fileexists(AmazonCoverPath) then deletefile(AmazonCoverPath);
     lStream:=TFileStream.Create(AmazonCoverPath, fmCreate or fmShareDenyNone);
     try
       XidHTTP.Get(PICString, lStream);
       Picfoundandloaded := True;
     except
       Picfoundandloaded := False;
     end;
    lStream.Free;
  //File anzeigen
  if Picfoundandloaded then begin
     if CopyAmazonPicToFolder then begin
        DateiInfoform.CopytoTitle(Self);
        if MRPlaylist.ActivePlaylist.Cell[11,ACTINDEX].AsInteger = -1 then begin
           CoverSearchPath := ExtractFilePath(ActFile);
           TRenewCover.create(False);
        end;
     end;
     fa := GetFileAttributes(AmazonCoverPath);
     if readonly in fa then begin
        TestFile := PChar(AmazonCoverPath);
        if SetFileAttributes(Testfile, FILE_ATTRIBUTE_NORMAL) then Resizepicture((AmazonCoverPath), DeskDisplay.AlbumCover.Width, DeskDisplay.AlbumCover.Height);
     end else Resizepicture((AmazonCoverPath), DeskDisplay.AlbumCover.Width, DeskDisplay.AlbumCover.Height);
     OldCover := (AmazonCoverPath);
     Deskdisplay.LoadnextCover(OldCover,False);
     Result := True;
  end else Result := False;
 except
   Result := False;
 end;
end;


function TForm1.SearchInXML:String;
var
 i, x,
 Imagepos,
 MedPos : Integer;
 St,ZZZ : WideString;
 NewFile : TStringList;
begin
  for i := 0 to FXMLFile.Count -1 do
  begin
    St := FXMLFile.Strings[i];
    if Pos('<MEDIUMIMAGE>',Uppercase(St))<>0 then begin
       MedPos := Pos('<MEDIUMIMAGE>',Uppercase(St));
       for x := MedPos to MedPos + 30 do begin
           ZZZ := copy(St,x,x+2);
           Imagepos := Pos('.JPG',Uppercase(ZZZ));
           Result := Copy(ZZZ,19,Imagepos-15);
           Exit;
       end;
    end;
  end;
end;

RWarnecke 12. Jan 2009 14:12

Re: Amazon
 
Vielleicht hilft Dir ja dieser Link weiter. Suchbegriff Hier im Forum suchenCDDB


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:31 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz