Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi ActiveX) Fetch ISBN XML from isbndb.com and ParseDemonstrates sending a query to isbndb.com and parsing the XML response.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB; ... procedure TForm1.Button1Click(Sender: TObject); var http: TChilkatHttp; strXml: WideString; xml: TChilkatXml; success: Integer; xml2: IChilkatXml; begin // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http := TChilkatHttp.Create(Self); // The access_key in this URL is a valid access key, but limited to 100 queries per day. // If the key does not work, it may be that others were testing and exhausted the limit. strXml := http.QuickGetStr('http://isbndb.com/api/books.xml?access_key=OV8L2Y9I&results=details&index1=isbn&value1=0443074348'); if (http.LastMethodSuccess <> 1) then begin Memo1.Lines.Add(http.LastErrorText); Exit; end; xml := TChilkatXml.Create(Self); success := xml.LoadXml(strXml); // The XML returned for this URL is the following: // <?xml version="1.0" encoding="UTF-8" ?> // <ISBNdb server_time="2007-10-25T14:07:25Z"> // <BookList total_results="1" page_size="10" page_number="1" shown_results="1"> // <BookData book_id="diagnostic_histopathology_of_tumors_2_volume_set_with_cd_rom" isbn="0443074348"> // <Title>Diagnostic Histopathology of Tumors: 2-Volume Set with CD-ROMs</Title> // <TitleLong>Diagnostic Histopathology of Tumors: 2-Volume Set with CD-ROMs (Diagnostic Histopathology of Tumors (Fletcher))</TitleLong> // <AuthorsText>Christopher D. M. Fletcher (Editor)</AuthorsText> // <PublisherText publisher_id="churchill_livingstone">Churchill Livingstone</PublisherText> // <Details dewey_decimal="616" physical_description_text="2166 pages" language="" edition_info="Hardcover; 2007-03-13" dewey_decimal_normalized="616" lcc_number="" change_time="2006-12-13T14:53:42Z" price_time="2007-10-25T01:12:13Z" /> // </BookData> // </BookList> // </ISBNdb> // First, navigate to the BookData node: success := xml.FirstChild2(); success := xml.FirstChild2(); // Show the Title and AuthorsText: Memo1.Lines.Add(xml.GetChildContent('Title')); Memo1.Lines.Add(xml.GetChildContent('AuthorsText')); // Show the publisher_id attribute of the PublisherText node: xml2 := xml.FindChild('PublisherText'); Memo1.Lines.Add(xml2.GetAttrValue('publisher_id')); // Save the XML to a file: success := xml.SaveXml('book.xml'); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.