|
You last visited: Today at 04:43
Advertisement
Tratsch rund um Autoit / Autoit Talk | kleinere Fragen
Discussion on Tratsch rund um Autoit / Autoit Talk | kleinere Fragen within the AutoIt forum part of the Coders Den category.
07/09/2012, 18:43
|
#286
|
elite*gold: 224
Join Date: Dec 2010
Posts: 2,766
Received Thanks: 931
|
Quote:
Originally Posted by lolkop
hättest du dir die hilfe auch nur einmal angeschaut, hättest du folgendes beispiel gesehehn...:
Code:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Example()
Func Example()
Local $listview, $button, $item1, $item2, $item3, $msg
GUICreate("listview items", 220, 250, 100, 200, -1, $WS_EX_ACCEPTFILES)
GUISetBkColor(0x00E0FFFF) ; will change background color
$listview = GUICtrlCreateListView("col1 |col2|col3 ", 10, 10, 200, 150);,$LVS_SORTDESCENDING)
$button = GUICtrlCreateButton("Value?", 75, 170, 70, 20)
$item1 = GUICtrlCreateListViewItem("item2|col22|col23", $listview)
$item2 = GUICtrlCreateListViewItem("............item1|col12|col13", $listview)
$item3 = GUICtrlCreateListViewItem("item3|col32|col33", $listview)
GUICtrlCreateInput("", 20, 200, 150)
GUICtrlSetState(-1, $GUI_DROPACCEPTED) ; to allow drag and dropping
GUISetState()
GUICtrlSetData($item2, "|ITEM1")
GUICtrlSetData($item3, "||COL33")
GUICtrlDelete($item1)
Do
$msg = GUIGetMsg()
Select
Case $msg = $button
MsgBox(0, "listview item", GUICtrlRead(GUICtrlRead($listview)), 2)
Case $msg = $listview
MsgBox(0, "listview", "clicked=" & GUICtrlGetState($listview), 2)
EndSelect
Until $msg = $GUI_EVENT_CLOSE
EndFunc ;==>Example
womit klar wird:
Code:
GUICtrlSetData($listViewItem, "||x")
lässt spalte 1 und 2 unberührt, und ändert spalte 3 auf x.
hast du folgendes listview:
kannst du mit "||5" zb die 2 in eine 5 ändern, oder mit "|||||15" die 5 in eine 15 ändern...
ergo wird nicht mehr als ein normales GUICtrlSetData für deine problemlösung benötigt...
|
Ja , im Endeffekt schon
|
|
|
07/09/2012, 21:56
|
#287
|
ベトナム警察
elite*gold: 0
Join Date: Jan 2012
Posts: 16,497
Received Thanks: 3,524
|
Quote:
Originally Posted by Lawliet!
Naja, das sollte mit StringRegEx ziemlich einfach gehen:
Code:
Titel: ....
Verkäufer: Lawliet!
Käufer: xxxyu
Preis: 4 eg
TREASURE INHALT
xxxxxxx
Also im Html Code einfach je einen Ausdruck für jeden der 5 Teile.
Mit _StringBetween sollte es aber auch gehen.
|
Wow..Mit solchen Befehlen habe ich noch nie gearbeitet. Habe auch keine Erfahrung damit. o;
Quote:
Originally Posted by lolkop
wenn die gesuchten teile immer in dieser reihenfolge auftreten, kann das ganze auch sehr schön mit einem ausdruck abgearbeitet werden =)
|
Möchtest du mir dabei helfen? xD
|
|
|
07/09/2012, 22:17
|
#288
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by Lumi'
Möchtest du mir dabei helfen? xD
|
wenn du hilfe mit einem parser problem erwartest, solltest du immer den passenden zu parsenden string mit angeben...
|
|
|
07/09/2012, 23:04
|
#289
|
ベトナム警察
elite*gold: 0
Join Date: Jan 2012
Posts: 16,497
Received Thanks: 3,524
|
Ich bräuchte nur jemanden, der mein Script korrigiert.
Bzw. den Treasure Load Script.
Ich bekomme ein Fehler, aber keine Ahnung wie ich ihn fixxen kann. 
Wenn du bereit wärst, würde ich dir diesen Script per PN schicken.
Den Script möchte ich ungern hier zeigen, da es Gründe gibt die ich nicht nennen möchte. :O
|
|
|
07/09/2012, 23:18
|
#290
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by Lumi'
Ich bräuchte nur jemanden, der mein Script korrigiert.
Bzw. den Treasure Load Script.
Ich bekomme ein Fehler, aber keine Ahnung wie ich ihn fixxen kann. 
Wenn du bereit wärst, würde ich dir diesen Script per PN schicken.
Den Script möchte ich ungern hier zeigen, da es Gründe gibt die ich nicht nennen möchte. :O
|
kannst den string ja leicht abwandeln... namen, zahlen oda bestimmte werte interessieren hier niemanden... wichtig ist nur, das die struktur erhalten bleibt.
bsp:
"<name>kevin</name><p**islaenge>5cm</p**islaenge>"
kannste auch gerne umwandeln in:
"<name>horst</name><p**islaenge>30cm</p**islaenge>"
solange du struktur gleich bleibt können dir alle helfen
|
|
|
07/10/2012, 13:26
|
#291
|
ベトナム警察
elite*gold: 0
Join Date: Jan 2012
Posts: 16,497
Received Thanks: 3,524
|
Quote:
Originally Posted by lolkop
kannst den string ja leicht abwandeln... namen, zahlen oda bestimmte werte interessieren hier niemanden... wichtig ist nur, das die struktur erhalten bleibt.
bsp:
"<name>kevin</name><p**islaenge>5cm</p**islaenge>"
kannste auch gerne umwandeln in:
"<name>horst</name><p**islaenge>30cm</p**islaenge>"
solange du struktur gleich bleibt können dir alle helfen
|
Wie lese ich den <a href="">.. </a> String aus? Wenn ich beim auslesen nur <td> </td> mache, dann liest er <a href=""> #ID </a> aus und nicht #ID.
|
|
|
07/10/2012, 13:42
|
#292
|
elite*gold: 0
Join Date: Mar 2011
Posts: 8,645
Received Thanks: 3,454
|
Quote:
Originally Posted by Lumi'
Wie lese ich den <a href="">.. </a> String aus? Wenn ich beim auslesen nur <td> </td> mache, dann liest er <a href=""> #ID </a> aus und nicht #ID.
|
Einfach mit _StringBetween.
|
|
|
07/10/2012, 13:45
|
#293
|
ベトナム警察
elite*gold: 0
Join Date: Jan 2012
Posts: 16,497
Received Thanks: 3,524
|
Ist mir klar, aber es verwirrt mich.
So sieht der Code aus:
PHP Code:
$hTreasureID_load = _StringBetween($hLine_TreasureID, "<td>", "</td>")
Wie füge ich da noch < a href=""> </a> ein?
Beispielsweise steht bei einem Treasure ID das hier:
treasure/104392">#104392</a>
Wie soll ich das Rot markierte auslesen?
|
|
|
07/10/2012, 13:54
|
#294
|
elite*gold: 0
Join Date: Jul 2012
Posts: 63
Received Thanks: 20
|
Ich habe ein Problem:
Code:
#include <IE.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>
#include <File.au3>
local $config, $conf
local $userdat, $user
local $passdat, $pass
local $weltdat, $welt
If FileExists("konfiguriert.txt") Then
$config = FileOpen("konfiguriert.txt")
If FileReadLine($config) == "true" Then
$userdat = FileOpen("username.txt")
$user = FileReadLine($userdat)
$passdat = FileOpen("passwort.txt")
$pass = FileReadLine($passdat)
$weltdat = FileOpen("weltkuerzel.txt")
$welt = FileReadLine($weltdat)
FileClose($config)
EndIf
Else
_FileCreate("username.txt")
_FileCreate("passwort.txt")
_FileCreate("weltkuerzel.txt")
_FileCreate("konfiguriert.txt")
FileSetAttrib("*.txt", "+H")
$inputuser = InputBox( "Login Username", "Bitte gib deinen Username ein:")
$inputpass = InputBox( "Login Passwort", "Bitte gib dein Passwort ein:")
$inputwelt = InputBox( "Login Welt", "Bitte gib den Weltkürzel deiner Welt ein:")
$userdat = FileOpen("username.txt", 1)
$user = FileWriteLine($userdat, $inputuser)
$passdat = FileOpen("passwort.txt", 1)
$pass = FileWriteLine($passdat, $inputpass)
$weltdat = FileOpen("weltkuerzel.txt", 1)
$welt = FileWriteLine($weltdat, $inputwelt)
$config = FileOpen("konfiguriert.txt",1)
$conf = FileWriteLine($config, "true")
FileClose($config)
EndIf
$Url = 'http://www.darkorbit.com/'
$User = $user
$Pwd = $pass
$test = _IEAutoLogin($Url, $User, $Pwd)
Func _IEAutoLogin($sUrl, $sUsername, $sPwd)
;funkey 09.09.09
$oIE = _IECreate($sUrl)
_IEErrorNotify(False)
_IEErrorHandlerRegister()
$oForms = _IEFormGetCollection($oIE)
If @error Then
Return SetError(1, _IEErrorHandlerDeRegister(), $oIE) ;'no forms --> no login'
Else
$Index = 0
For $oForm In $oForms
$oFormElements = _IEFormElementGetCollection($oForm)
If IsObj($oFormElements) Then
$IndexElement = 0
For $oElement In $oFormElements
If $oElement.Type = 'password' Then
$oPwd = _IEFormElementGetObjByName($oForm, $oElement.Name)
_IEFormElementSetValue($oPwd, $sPwd)
For $i = $IndexElement - 1 To 0 Step -1
$oUser = _IEFormElementGetCollection($oForm, $i)
If $oUser.Type = 'text' Then
_IEFormElementSetValue($oUser, $sUsername)
ExitLoop
EndIf
Next
If $oForm.action <> "0" And Not StringInStr($oForm.action, '.php') Then ;submit
_IEFormSubmit($oForm, 0)
_IELoadWait($oIE)
Else ;click
For $i = $IndexElement + 1 To $IndexElement + 10 ;check the next 10 elements
$oButton = _IEFormElementGetCollection($oForm, $i)
If $oButton.Type = 'submit' Then
_IEAction($oButton, "click")
ExitLoop
EndIf
Next
EndIf
Return SetExtended(_IEErrorHandlerDeRegister(), $oIE)
EndIf
$IndexElement += 1
Next
EndIf
$Index += 1
Next
EndIf
Return SetError(2, _IEErrorHandlerDeRegister(), $oIE) ;no password-field found
EndFunc ;==>_IEAutoLogin
Opt("WinTitleMatchMode",4)
$Titel = WinGetTitle("active")
WinSetState($Titel,"",@SW_MAXIMIZE)
MsgBox (0, "Login", "Bitte Welt auswählen!")
WinWaitActive("Darkorbit | Das Browsergames Adventure für Action im Hyperspace. - Windows Internet Explorer")
$urlbrowser = _IEPropertyGet( $Titel, "locationurl")
While True
If $urlbrowser = "http://"$welt".darkorbit.bigpoint.com/indexInternal.es?action=internalStart" Then
Exit
EndIf
WEnd
$game = _IECreate("http://"$welt".darkorbit.bigpoint.com/indexInternal.es?action=internalMapRevolution")
ERROR: Zeile 101
If $urlbrowser
__^__
Error: Error in expresion.
Habe keine Ahnung was das ist.
DarkPlayer123
|
|
|
07/10/2012, 13:58
|
#295
|
elite*gold: 0
Join Date: Mar 2011
Posts: 8,645
Received Thanks: 3,454
|
@Lumi:
PHP Code:
$hTreasureID_load = _StringBetween($hLine_TreasureID, "<td>< a href="">", "</a></td>")
|
|
|
07/10/2012, 13:59
|
#296
|
ベトナム警察
elite*gold: 0
Join Date: Jan 2012
Posts: 16,497
Received Thanks: 3,524
|
Quote:
Originally Posted by DarkPlayer123
Ich habe ein Problem:
Code:
#include <IE.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>
#include <File.au3>
local $config, $conf
local $userdat, $user
local $passdat, $pass
local $weltdat, $welt
If FileExists("konfiguriert.txt") Then
$config = FileOpen("konfiguriert.txt")
If FileReadLine($config) == "true" Then
$userdat = FileOpen("username.txt")
$user = FileReadLine($userdat)
$passdat = FileOpen("passwort.txt")
$pass = FileReadLine($passdat)
$weltdat = FileOpen("weltkuerzel.txt")
$welt = FileReadLine($weltdat)
FileClose($config)
EndIf
Else
_FileCreate("username.txt")
_FileCreate("passwort.txt")
_FileCreate("weltkuerzel.txt")
_FileCreate("konfiguriert.txt")
FileSetAttrib("*.txt", "+H")
$inputuser = InputBox( "Login Username", "Bitte gib deinen Username ein:")
$inputpass = InputBox( "Login Passwort", "Bitte gib dein Passwort ein:")
$inputwelt = InputBox( "Login Welt", "Bitte gib den Weltkürzel deiner Welt ein:")
$userdat = FileOpen("username.txt", 1)
$user = FileWriteLine($userdat, $inputuser)
$passdat = FileOpen("passwort.txt", 1)
$pass = FileWriteLine($passdat, $inputpass)
$weltdat = FileOpen("weltkuerzel.txt", 1)
$welt = FileWriteLine($weltdat, $inputwelt)
$config = FileOpen("konfiguriert.txt",1)
$conf = FileWriteLine($config, "true")
FileClose($config)
EndIf
$Url = 'http://www.darkorbit.com/'
$User = $user
$Pwd = $pass
$test = _IEAutoLogin($Url, $User, $Pwd)
Func _IEAutoLogin($sUrl, $sUsername, $sPwd)
;funkey 09.09.09
$oIE = _IECreate($sUrl)
_IEErrorNotify(False)
_IEErrorHandlerRegister()
$oForms = _IEFormGetCollection($oIE)
If @error Then
Return SetError(1, _IEErrorHandlerDeRegister(), $oIE) ;'no forms --> no login'
Else
$Index = 0
For $oForm In $oForms
$oFormElements = _IEFormElementGetCollection($oForm)
If IsObj($oFormElements) Then
$IndexElement = 0
For $oElement In $oFormElements
If $oElement.Type = 'password' Then
$oPwd = _IEFormElementGetObjByName($oForm, $oElement.Name)
_IEFormElementSetValue($oPwd, $sPwd)
For $i = $IndexElement - 1 To 0 Step -1
$oUser = _IEFormElementGetCollection($oForm, $i)
If $oUser.Type = 'text' Then
_IEFormElementSetValue($oUser, $sUsername)
ExitLoop
EndIf
Next
If $oForm.action <> "0" And Not StringInStr($oForm.action, '.php') Then ;submit
_IEFormSubmit($oForm, 0)
_IELoadWait($oIE)
Else ;click
For $i = $IndexElement + 1 To $IndexElement + 10 ;check the next 10 elements
$oButton = _IEFormElementGetCollection($oForm, $i)
If $oButton.Type = 'submit' Then
_IEAction($oButton, "click")
ExitLoop
EndIf
Next
EndIf
Return SetExtended(_IEErrorHandlerDeRegister(), $oIE)
EndIf
$IndexElement += 1
Next
EndIf
$Index += 1
Next
EndIf
Return SetError(2, _IEErrorHandlerDeRegister(), $oIE) ;no password-field found
EndFunc ;==>_IEAutoLogin
Opt("WinTitleMatchMode",4)
$Titel = WinGetTitle("active")
WinSetState($Titel,"",@SW_MAXIMIZE)
MsgBox (0, "Login", "Bitte Welt auswählen!")
WinWaitActive("Darkorbit | Das Browsergames Adventure für Action im Hyperspace. - Windows Internet Explorer")
$urlbrowser = _IEPropertyGet( $Titel, "locationurl")
While True
If $urlbrowser = "http://"$welt".darkorbit.bigpoint.com/indexInternal.es?action=internalStart" Then
Exit
EndIf
WEnd
$game = _IECreate("http://"$welt".darkorbit.bigpoint.com/indexInternal.es?action=internalMapRevolution")
ERROR: Zeile 101
If $urlbrowser
__^__
Error: Error in expresion.
Habe keine Ahnung was das ist.
DarkPlayer123
|
Code:
http://" & $welt & ".darkorbit.bigpoint.com/indexInternal.es?action=internalStart
Quote:
Originally Posted by Freddy
@Lumi:
PHP Code:
$hTreasureID_load = _StringBetween($hLine_TreasureID, "<td>< a href="">", "</a></td>")
|
Was muss in < a href=""> rein? Bekomme trotzdem ein Error. :P
|
|
|
07/10/2012, 14:35
|
#297
|
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
|
Lumi poste bitte einfach mal den HTML Code, aus dem du etwas auslesen willst. In dem von der geposteten Teil sehe ich kein <td></td>, du verwendest es aber bei StringBetween.
Ich habe mir den Code jetzt etwas zusammengereimt und denke er sieht so aus:
Code:
<td>< a href="http://www.elitepvpers.com/theblackmarket/treasure/123456">" #123456 "</a></td>
Mit StringRegExp könntest du die ID so herausparsen:
Code:
StringRegEx($html, '<td>< a href="http://www.elitepvpers.com/theblackmarket/treasure/[0-9]{6}">" (#[0-9]{6}) "</a></td>', 3)
Du könntest auch einfach erst mit StringBetween das <td> *** </td> parsen, dann nach der position von "#" suchen und mit Stringmit($html, $posvon#, 6) die ID auslesen.
|
|
|
07/10/2012, 14:37
|
#298
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by Lumi'
Ist mir klar, aber es verwirrt mich.
So sieht der Code aus:
PHP Code:
$hTreasureID_load = _StringBetween($hLine_TreasureID, "<td>", "</td>")
Wie füge ich da noch < a href=""> </a> ein?
Beispielsweise steht bei einem Treasure ID das hier:
treasure/104392">#104392</a>
Wie soll ich das Rot markierte auslesen? 
|
wenn du hier so rumeierst, und etwas in der art: "im text steht iwo was von "123" und iwo was von "456" aber ich will da inner mitte son stück von haben", hier reinstellst, kann dir niemand helfen... stell den source string hier rein, markiere die stellen, welche dich interessieren, oder löse dein problem selbst....
alles andere ist nur zeitverschwendung.
|
|
|
07/10/2012, 14:41
|
#299
|
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
|
@dark
Code:
"http://"$welt".darkorbit.bigpoint.com/indexInternal.es?action=internalStart"
Bei $welt fehlt schonmal ein & $welt &.
Den Fehler hast du oft
|
|
|
07/10/2012, 14:45
|
#300
|
ベトナム警察
elite*gold: 0
Join Date: Jan 2012
Posts: 16,497
Received Thanks: 3,524
|
Hier mal ein Screen wie mein Programm aussieht..:
Quelltext:
Code:
<td>
<a href="http://www.elitepvpers.com/theblackmarket/treasure/104653">#104653</a>
</td>
Hier ein Screen:
Quote:
Originally Posted by Lawliet!
Lumi poste bitte einfach mal den HTML Code, aus dem du etwas auslesen willst. In dem von der geposteten Teil sehe ich kein <td></td>, du verwendest es aber bei StringBetween.
Ich habe mir den Code jetzt etwas zusammengereimt und denke er sieht so aus:
Code:
<td>< a href="http://www.elitepvpers.com/theblackmarket/treasure/123456">" #123456 "</a></td>
Mit StringRegExp könntest du die ID so herausparsen:
Code:
StringRegEx($html, '<td>< a href="http://www.elitepvpers.com/theblackmarket/treasure/[0-9]{6}">" (#[0-9]{6}) "</a></td>', 3)
Du könntest auch einfach erst mit StringBetween das <td> xxx </td> parsen, dann nach der position von "#" suchen und mit Stringmit($html, $posvon#, 6) die ID auslesen.
|
Ich habe bei _StringBetween <td></td> und es ging auch. Mein Problem, bzw. mein einzigstes Problem ist nur, dass ich das <a href..wie im Bild beschrieben weg haben. Die ID und Käufer stimmen soweit, nur der Quelltext im Programm nervt.
Daher dachte ich, dass ich vielleicht <a href... im _StringBetween vergessen habe nur weiß ich nicht, wie ich ihn so einfüge, dass es weg geht. Habe schon vieles versucht.
|
|
|
Similar Threads
|
[Sammelthread]Fragen zu Autoit wie man Hacks herstellt(Autoit) + Antworten
11/16/2011 - Metin2 - 0 Replies
Hallo Liebe Community,
Ich habe diesen Thread aufgemacht weil manche leute mit Autoit nicht mehr weiterkommen wie man Hack herstellt ,ich habe mit schon ein Multihack mit Autoit herstellt das war einfach .Da viele User nicht weiterkommen werden habe ich mich entschieden ein Thread aufzumachen mit Fragen und ich den dann Antworten kann und helfen kann!
------------------------------------------------- ---------------------------
Mein Multihack:...
|
All times are GMT +1. The time now is 04:44.
|
|