FF.au3/IE.au3 Quellcode auslesen in Variable speichern

  • ich kann die seite leider nicht öffnen da Games bei uns in der arbeit gesperrt sind.

    aber erlaubt die seite denn die automatisierung? wohl kaum oder?
    und wenn doch: Was willste mit deinem script machen?

  • muss es ja net erlauben, bzw ich will ja nur die daten auslesen,bsp: ich lese aus, was der character da fürne klasse ist, was im quellcode unter class=priest steht, das geb ich dann in ner msgbox aus.

    damit jeder gleich weiß.

    aha. ^^

    klasse ist priester
    etc.

    //edit

    Spoiler anzeigen
    [autoit]


    #cs ----------------------------------------------------------------------------

    [/autoit] [autoit][/autoit] [autoit]

    AutoIt Version: 3.3.4.0
    Author: myName

    [/autoit] [autoit][/autoit] [autoit]

    Script Function:
    Template AutoIt script.

    [/autoit] [autoit][/autoit] [autoit]

    #ce ----------------------------------------------------------------------------

    [/autoit] [autoit][/autoit] [autoit]

    ; Script Start - Add your code below here
    #include <GUIConstantsEx.au3>
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <IE.au3>
    #include <FF.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Guicreate("EviLSig",500,350)
    GuictrlcreateLabel("Character Name:",30,30,120,25)
    $Name = GUICtrlCreateInput("",130,25,120,25)
    GuictrlcreateLabel("Rising Gods Realm:",30,60,120,25)
    $Realm = GUICtrlCreateInput("",130,55,120,25)
    $Button = GUICtrlCreateButton("Fertig",130,85,120,25)
    $ButtonExit = GUICtrlCreateButton("Beenden",370,315,120,25)
    $Button1 = GUICtrlCreateButton("Show me",130,112,120,25)
    GuiCtrlSetState($Button1, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    case $button
    GuiCtrlSetState($Name, $GUI_DISABLE)
    GuiCtrlSetState($Realm, $GUI_DISABLE)
    msgbox(0,"Status", "Character Name: " & GUICtrlRead($Name) & @CRLF & "Rising Gods Realm: " & GUICtrlRead($Realm))
    GuiCtrlSetState($Button1, $GUI_ENABLE)
    case $ButtonExit
    exit
    case $Button1
    ShellExecute("http://www.arsenal.rising-gods.de/character-sheet.xml?r=" & GUICtrlRead($Realm) & "-Realm&n=" & GUICtrlRead($Name))
    EndSwitch
    Wend

    [/autoit]

    und jetz soll in dem gui noch stehen, was der angegebene char für eigenschaften hat.
    klasse,life,mana,spelldmg (^^ wow krams halt)
    was ich ausm quellcode lesen will.

    Einmal editiert, zuletzt von Kev (4. März 2010 um 16:14)

  • okay er erlaubts schnitzel ;)

    ich kenn den schon paar jahre..das is kein problem, da brauchste dir keine sorgen machen ;)


    da schnitzel net auf die seite kommt, hab ich den quellcode ma kopiert.

    Spoiler anzeigen

    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="/layout/character/sheet.xsl"?>
    <page globalSearch="1" lang="de_de" requestUrl="/character-sheet.xml">
    <tabInfo subTab="profile" tab="character" tabGroup="character" tabUrl="r=PvP-Realm&amp;cn=Anubiz&amp;gn=PornKingS"/>
    <characterInfo>
    <character battleGroup="Rising Gods" charUrl="r=PvP-Realm&amp;n=Anubiz" class="Priester" classId="5" classUrl="c=Priester" faction="Allianz" factionId="0" gender="Männlich" genderId="0" guildName="PornKingS" guildUrl="r=PvP-Realm&amp;gn=PornKingS" lastModified="04.03.2010 12:00" level="75" name="Anubiz" points="760" prefix="" race="Mensch" raceId="1" realm="PvP-Realm" suffix="" titleId="0"/>
    <characterTab>
    <talentSpecs>
    <talentSpec active="1" group="1" icon="spell_shadow_shadowwordpain" prim="Schatten" treeOne="12" treeThree="54" treeTwo="0"/>
    </talentSpecs>

    <buffs/>
    <debuffs/>
    <pvp>
    <lifetimehonorablekills value="6601"/>
    <arenacurrency value="0"/>
    </pvp>
    <professions>
    <skill id="182" key="herbalism" max="75" name="Kräuterkunde" value="52"/>
    <skill id="773" key="inscription" max="150" name="Inschriftenkunde" value="100"/>

    </professions>
    <characterBars>
    <health effective="12819"/>
    <secondBar casting="85" effective="10612" notCasting="85" type="m"/>
    </characterBars>
    <baseStats>
    <strength attack="41" base="41" block="0" effective="41"/>
    <agility armor="96" attack="48" base="48" critHitPercent="0" effective="48"/>
    <stamina base="93" effective="814" health="7960" petBonus="-1"/>

    <intellect base="163" critHitPercent="0" effective="510" mana="11930" petBonus="-1"/>
    <spirit base="173" effective="175" healthRegen="24" manaRegen="85"/>
    <armor base="3974" effective="3974" percent="23.56" petBonus="-1"/>
    </baseStats>
    <resistances>
    <arcane petBonus="-1" value="0"/>
    <fire petBonus="-1" value="0"/>
    <frost petBonus="-1" value="0"/>
    <holy petBonus="-1" value="0"/>

    <nature petBonus="-1" value="0"/>
    <shadow petBonus="-1" value="0"/>
    </resistances>
    <melee>
    <mainHandDamage dps="44.3" max="120" min="20" percent="0" speed="1.58"/>
    <offHandDamage dps="0" max="0" min="0" percent="0" speed="1.97"/>
    <mainHandSpeed hastePercent="0.99" hasteRating="0" value="1.58"/>
    <offHandSpeed hastePercent="0.99" hasteRating="0" value="1.97"/>
    <power base="31" effective="31" increasedDps="0"/>

    <hitRating increasedHitPercent="0" penetration="0" reducedArmorPercent="0" value="36"/>
    <critChance percent="4.83" plusPercent="0" rating="73"/>
    <expertise additional="0" percent="0" rating="3" value="0"/>
    </melee>
    <ranged>
    <weaponSkill rating="0" value="0"/>
    <damage dps="204.01" max="495" min="268" percent="0" speed="1.87"/>
    <speed hastePercent="0.99" hasteRating="0" value="0.00"/>
    <power base="31" effective="31" increasedDps="0" petAttack="-1.00" petSpell="-1.00"/>

    <hitRating increasedHitPercent="0" penetration="0" reducedArmorPercent="0" value="36"/>
    <critChance percent="0" plusPercent="0" rating="73"/>
    </ranged>
    <spell>
    <bonusDamage>
    <arcane value="1044"/>
    <fire value="1044"/>
    <frost value="1044"/>
    <holy value="1044"/>

    <nature value="1044"/>
    <shadow value="1044"/>
    <petBonus attack="-1" damage="-1" fromType="0"/>
    </bonusDamage>
    <bonusHealing value="1044"/>
    <hitRating increasedHitPercent="0" penetration="0" reducedResist="0" value="36"/>
    <critChance rating="0">
    <arcane percent="7.97"/>
    <fire percent="7.97"/>

    <frost percent="7.97"/>
    <holy percent="7.97"/>
    <nature percent="7.97"/>
    <shadow percent="7.97"/>
    </critChance>
    <penetration value="0"/>
    <manaRegen casting="85" notCasting="85"/>
    <hasteRating hastePercent="0.99" hasteRating="0"/>
    </spell>

    <defenses>
    <armor base="3974" effective="3974" percent="23.56" petBonus="-1"/>
    <defense decreasePercent="0" increasePercent="0" plusDefense="0" rating="0" value="0"/>
    <dodge increasePercent="0.00" percent="4.51" rating="123"/>
    <parry increasePercent="0.00" percent="0" rating="0"/>
    <block increasePercent="0.00" percent="0" rating="0"/>
    <resilience damagePercent="0" hitPercent="0.00" value="0"/>
    </defenses>
    <items>

    <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_jewelry_ring_60" id="32247" maxDurability="0" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="10"/>
    <item durability="79" gem0Id="3118" gem1Id="3226" gem2Id="3129" icon="inv_chest_cloth_60" id="35087" maxDurability="100" permanentenchant="2933" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="4"/>
    <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_shirt_guildtabard_01" id="31780" maxDurability="0" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="18"/>
    <item durability="29" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_gauntlets_64" id="35083" maxDurability="35" permanentenchant="2937" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="9"/>
    <item durability="48" gem0Id="3282" gem1Id="3226" gem2Id="0" icon="inv_shoulder_63" id="33747" maxDurability="60" permanentenchant="2995" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="2"/>
    <item durability="29" gem0Id="3282" gem1Id="0" gem2Id="0" icon="inv_bracer_02" id="35168" maxDurability="35" permanentenchant="369" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="8"/>
    <item durability="40" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_boots_cloth_12" id="35138" maxDurability="50" permanentenchant="2841" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="7"/>
    <item durability="61" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_pants_cloth_28" id="35085" maxDurability="75" permanentenchant="2748" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="6"/>
    <item durability="29" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_belt_13" id="35153" maxDurability="35" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="5"/>

    <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_jewelry_trinketpvp_01" id="37864" maxDurability="0" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="12"/>
    <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_jewelry_ring_60" id="35129" maxDurability="0" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="11"/>
    <item durability="85" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_mace_56" id="33687" maxDurability="105" permanentenchant="2669" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="15"/>
    <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_misc_gem_lionseye_01" id="34470" maxDurability="0" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="13"/>
    <item durability="0" gem0Id="3282" gem1Id="0" gem2Id="0" icon="inv_jewelry_necklace_36" id="35133" maxDurability="0" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="1"/>
    <item durability="48" gem0Id="3275" gem1Id="3118" gem2Id="0" icon="inv_helmet_132" id="35084" maxDurability="60" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="0"/>
    <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_misc_book_06" id="31978" maxDurability="0" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="16"/>
    <item durability="61" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_wand_09" id="35065" maxDurability="75" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="17"/>
    <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_misc_cape_07" id="44429" maxDurability="0" permanentenchant="2938" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="14"/>

    <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_shirt_08" id="10034" maxDurability="0" permanentenchant="0" pickUp="" putDown="" randomPropertiesId="0" seed="0" slot="3"/>
    </items>
    <glyphs/>
    </characterTab>
    <summary>
    <c earned="74" points="760" total="931" totalPoints="10285"/>
    <category id="92" name="Allgemein">
    <c earned="18" earnedPoints="180" total="54" totalPoints="570"/>
    </category>

    <category id="96" name="Quests">
    <c earned="6" earnedPoints="60" total="49" totalPoints="530"/>
    </category>
    <category id="97" name="Erkundung">
    <c earned="6" earnedPoints="60" total="70" totalPoints="830"/>
    </category>
    <category id="95" name="Spieler gegen Spieler">
    <c earned="25" earnedPoints="270" total="149" totalPoints="1735"/>
    </category>

    <category id="168" name="Dungeon &amp; Schlachtzug">
    <c earned="11" earnedPoints="110" total="366" totalPoints="3945"/>
    </category>
    <category id="169" name="Berufe">
    <c earned="3" earnedPoints="30" total="75" totalPoints="760"/>
    </category>
    <category id="201" name="Ruf">
    <c earned="3" earnedPoints="30" total="44" totalPoints="545"/>
    </category>

    <category id="155" name="Weltereignisse">
    <c earned="2" earnedPoints="20" total="124" totalPoints="1370"/>
    </category>
    <category id="81" name="Heldentaten">
    <c earned="0"/>
    </category>
    </summary>
    </characterInfo>
    </page>

    <!-- cached file. cache valid until 05.03.2010 00:00:30. -->

  • hm ok dann sag doch das das ne seite von nem bekannten is ^^

    den quellcode kriegste so:

    [autoit]

    $source = _INetGetSource("www.diehomepage.de")

    [/autoit]

    und untersuchen kannst du ihn mi RegEx oder mit den stringfunktionen. Meistens funktioniert _Stringbetween ganz gut ;)

  • okay und jetz für ganz doofe?

    quellcode von der hp steht oben..

    [autoit]

    $source = _INetGetSource("http://www.arsenal.rising-gods.de/character-sheet.xml?r=" & GUICtrlRead($Realm) & "-Realm&n=" & GUICtrlRead($Name))

    [/autoit]

    und jetz zb davon class=priest..da soller..des class=priest finden, und das was hinter dem = steht auslesen, ich versuch ma umzusetzen:

    $class = suche-im-quellcode(class=*) und speicher was für * steht in der variable $class

    4 Mal editiert, zuletzt von Kev (4. März 2010 um 16:37)

  • so sollte es eigentlich funktionieren:

    Spoiler anzeigen
    [autoit]

    #include <Inet.au3>
    #include <String.au3>
    $source = _INetGetSource("www.diehomepage.de")
    $klasse = _StringBetween($source , '" class="', '" classId')

    [/autoit] [autoit][/autoit] [autoit]

    If IsArray($klasse) Then
    MsgBox(0,"Deine Klasse ist:", $klasse[0])
    Else
    msgbox(0,"Fehler", "Keine Klasse gefunden")
    EndIf

    [/autoit]
  • [autoit]

    #include <Inet.au3>
    #include <String.au3>
    $source = _INetGetSource("http://www.arsenal.rising-gods.de/character-sheet.xml?r=PvP-Realm&n=Anubiz")
    $klasse = _StringBetween($source , '" class="', '" classId')

    [/autoit][autoit][/autoit][autoit]

    If IsArray($klasse) Then
    MsgBox(0,"Deine Klasse ist:", $klasse[1])
    Else
    msgbox(0,"Fehler", "Keine Klasse gefunden")
    EndIf

    [/autoit]

    so?!?!?!

    kommt fail ^^

  • hö, du hasts aber schon angepasst oder, also den link

    Spoiler anzeigen
    [autoit]

    #include <Inet.au3>
    #include <String.au3>
    $source = _INetGetSource("http://www.arsenal.rising-gods.de/character-sheet.xml?r=PvP-Realm&n=Anubiz")
    $klasse = _StringBetween($source , '" class="', '" classId')

    [/autoit] [autoit][/autoit] [autoit]

    If IsArray($klasse) Then
    MsgBox(0,"Deine Klasse ist:", $klasse[0])
    Else
    msgbox(0,"Fehler", "Keine Klasse gefunden")
    EndIf

    [/autoit]

    weil genau so funktionierts bei mir

  • Auch wenn das Problem schon gelöst ist: Ich empfehle für sowas immer StringRegExp. Das ist schnell, praktisch, und zuverlässiger als _StringBetween (welches im übrigen nur ein Wrapper für RegExp ist)

    Siehe meine Signatur - da findest du ein entsprechendes Tutorial falls es dich interessieren sollte