• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

XMl lesen und anzeigen

Bomberzocker

Auralia
Registriert
08.06.08
Beiträge
202
Also applescript und Safari finde ich immer ganz schwer. Wie kann man denn auch z.B. Quellcode anzeigen lassen? Vielleicht könnt ihr mir da ein bisschen helfen.

Mein Problem: Wie kann ich ne XMl Datei wie z.B. "xml datei" mit Applescript anzeigen lassen? Ich hab schon überall im internet geguckt habe aber nix gefunden. Also Applescript und Safari finde ich immer ganz schwer. Wie kann man denn auch z.B. Quellcode anzeigen lassen? Vielleicht könnt ihr mir da ein bisschen helfen.
Danke im vorraus
 

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Hallo,

ja da geht es schon ein bisschen ans Eingemachte ;)

Ich habe Dir ein Quick-Tutorial geschrieben:

Das XML:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<bsp>
 <user>
  <name>Du</name>
 </user>
 <user>
  <name>Er</name>
 </user>
 <user>
  <name>Sie</name>
 </user>
</bsp>
Das passende AS, das die Namen anzeigt:

Code:
-- XML-Datei auswählen
set tmp to (choose file) as string

--  Ergebnis XML lesen
tell application "System Events"
    
    -- Liste aller "User" >> {item 1, item 2, usw.}
    --
    -- Gedeutscht: Hole mir alle Elemente von dem Mutterlement "bsp" aus dem Inhalt der XML-Datei "tmp" deren Namen "user" ist
    --
    set alleUser to every XML element of XML element "bsp" of contents of XML file tmp whose name is "user"
    
    -- Jetzt möchten wir die Namen wissen
    -- alle Benutzer durschlaufen
    --
    repeat with nUser in alleUser
        
        -- Das Element, das den Namen, also den Text, beinhaltet heißt "name"
        -- Wir wollen aber den Wert des Elements, ergo "value of"
        -- 
        set derName to value of XML element "name" of nUser
        
        -- "System Events" niemals für GUI-Blubb verwenden!
        --
        tell application "Finder" to display alert "Name" message derName
        
    end repeat
    
end tell
Viele Grüße
 

Bomberzocker

Auralia
Registriert
08.06.08
Beiträge
202
Danke, danke! Du hast mir sehr geholfen. Jetzt weiss ich wie ich xml-Dateien ausswerten kann, eine Überschrift für display dialog benutzen kann und noch das Icon des Programmes links dabei stehen habe. Um xml-datein in Safari auszuwerten lade ich sie einfach runter und speicher sie irgendwo. Das müsste ich eigentlich alleine mit Applescript hinbekommen.
mfg Bomberzocker
 

Bomberzocker

Auralia
Registriert
08.06.08
Beiträge
202
Wenn man das davor setzt, funktioniert es prima. Ich würde aber gerne den Quelltext speichern und nicht als Webarchiv. Dafür muss ich den Balken (dieser wo man Quelltext oder Webarchiv einstellen kann. Also kein Scrollbalken sondern ein Auswahlbalken) bewegen. Wie kann ich das mit Applescript machen?
property target_URL : "http://world-hack.org/api_4904188d58de5.xml"
open location target_URL
tell application "Safari"
activate
end tell
delay 1
tell application "System Events"
keystroke "s" using command down
keystroke "xml"
key code 76
end tell
 

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Hallo,

Safari ist ein schicker Browser, keine Frage. Aber wofür benötigst Du diesen in diesem Fall? ;)

Code:
set meineURL to "http://world-hack.org/api_4904188d58de5.xml"

set tmpXML to (path to application support folder from user domain as string) & "tmpXML.xml"

-- Datei herunterladen
my dateiDownload(meineURL, tmpXML, true)

-- Datei herunterladen
on dateiDownload(urlString, pfad, ersetzen)
    if (ersetzen is true) then
        tell application "URL Access Scripting" to download urlString to file pfad replacing yes
    else
        tell application "URL Access Scripting" to download urlString to file pfad replacing no
    end if
end dateiDownload

Viele Grüße
 

Bomberzocker

Auralia
Registriert
08.06.08
Beiträge
202
ich hätte nicht gedacht das api zeugs auszulesen so kompliziert ist. Ich hab das jetzt versucht zusammenzuflicken und anzupassen aber alles was ich probiert habe funktioniert nicht. Aber wenn du mir das machst bringt es mir ja auch nichts, wenn ich es nicht so verstehe. Trotzdem danke.