1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Bit-Service

Beiträge von Bit-Service

  • Link öffnen, Bild speichern - 15 Euro

    • Bit-Service
    • 24. März 2015 um 02:01

    Ok, Problem ist gelöst.

  • Link öffnen, Bild speichern - 15 Euro

    • Bit-Service
    • 22. März 2015 um 20:28

    sorry, das wusste ich nicht. domain ist amazon.de

    http://www.amazon.de/s/ref=nb_sb_noss?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&url=search-alias%3Daps&field-keywords=718037773421

    erstes Suchergebnis-> Foto in großer Größe wie beschrieben speichern. Würde auch noch die anderen Fotos nehmen wenns nicht viel Arbeit ist (je mit -1.jpg, -2.jpg, etc) aber das erste ist erstmal am wichtigsten ;)

  • Link öffnen, Bild speichern - 15 Euro

    • Bit-Service
    • 22. März 2015 um 16:23

    Ok, wäre mir recht, aber leider sind meine Kenntnisse sehr beschränkt, sonst würde ich es ja selbst machen ;)

  • Link öffnen, Bild speichern - 15 Euro

    • Bit-Service
    • 22. März 2015 um 15:00

    Guten Tag,

    ich habe eine csv mit 2 Spalten. In der ersten Spalte steht eine Artikelnummer, in der zweiten die EAN-Nummer, ich möchte die zweite in einen Link einsetzen als Variable:

    test.csv
    Artikelnummer;EAN
    78735;718037773421

    Link im IE öffnen: http://www.meinedomain.de/search=[EAN]

    Mausclick (links) auf Pixelposition 290, 330
    Mausclick (links) auf Pixelposition 275, 445

    Mausclick (rechts) auf Pixelposition 1130, 500
    Bild speichern unter
    C:\Bilder\[Artikelnummer].jpg
    Wenn die Datei schon vorhanden ist soll die Datei nicht ersetzt werden
    Mit dem nächsten Datensatz aus der Datei fortfahren

    Es wäre sehr schön, wenn mir da jemand etwas auf die schnelle umsetzen könnte, Gegenleistung hatte ich so an 15 Euro gedacht über PayPal.

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 19. Februar 2015 um 00:04

    Mir ist aufgefallen, dass in der Schüsselwortdatei die Datensätze, die 3 Spalten haben hinter dem 3. Datensatz kein Simikolon hatten, hatte diese jetzt manuell hinzugefügt, aber jetzt kommt error line 49.

    Kann es sein das es damit zusammenhängt?

    [autoit]

    #include <array.au3>
    $file=FileOpen("pricelist.csv",0)
    $zielDatei="out.txt"
    $fileD=FileOpen($zielDatei,BitOR(8,2))
    $arSWords=_gibSchluesselwoerterAlsArray("schlüsselwörter.txt")
    while 1
    $line=FileReadLine($file)
    if @error then
    ExitLoop
    endif
    $ar=StringSplit($line,";",2)
    ReDim $ar[Ubound($ar)>18?Ubound($ar):18]
    if UBound($ar)>17 then ;HIER ANPASSEN!!!!!! (nur exsistente Felder zählen)
    for $i=0 to UBound($arSWords)-1 step 1
    if $ar[9]=$arSWords[$i][0] then
    $ar[15]=$arSWords[$i][1]
    $ar[16]=$arSWords[$i][2]
    $ar[17]=$arSWords[$i][3]
    endif
    next
    endif
    $string=""
    for $l=0 to UBound($ar)-1 step 1
    $string&=$ar[$l]
    $tmp=4
    if $ar[15]<>"" or $ar[16]<>"" or $ar[17]<>"" then
    $tmp=1
    endif
    if $l<UBound($ar)-$tmp then
    $string&=";"
    endif
    next
    FileWriteLine($fileD,$string)
    WEnd
    ;Falls deine Schlüsselworte in einer Datei stehen kannst das auch so machen:
    ;Aufbau der datei:
    ; J1;P1;Q1
    ; J2;P2;Q2
    Func _gibSchluesselwoerterAlsArray($file)
    $data=fileread($file)
    $ar=stringsplit($data,@crlf,2+1)
    local $array[UBound($ar)][4]
    for $i=0 to UBound($ar)-1 step 1
    if $ar[$i]<>"" then
    $tmp=StringSplit($ar[$i],";",2)
    $array[$i][0]=$tmp[0]
    $array[$i][1]=$tmp[1]
    $array[$i][2]=$tmp[2]
    $array[$i][3]=$tmp[3]
    endif
    next
    return $array
    EndFunc

    [/autoit]
  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 18. Februar 2015 um 23:45

    ok, also hier wurden auch die Werte mit Leerzeichen ausgegeben, aber irgendwie werden die Werte bei rund 15 % der Datensätze nicht gefüllt -.-

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 18. Februar 2015 um 00:07

    Habe es zwischen zeile 19+20 eingefügt, bekam aber dann ein Fehler in Zeile 20, habe es daraufhin zwischen Zeile 18+18 eingefügt und das Skript läuft durch, aber das Problem das die Werte nicht eingesetzt werden besteht immer noch.

    [autoit]

    #include <array.au3>
    $file=FileOpen("pricelist.csv",0)
    $zielDatei="out.txt"
    $fileD=FileOpen($zielDatei,BitOR(8,2))
    $arSWords=_gibSchluesselwoerterAlsArray("schlüsselwörter.txt")
    while 1
    $line=FileReadLine($file)
    if @error then
    ExitLoop
    endif
    $ar=StringSplit($line,";",2)
    ReDim $ar[Ubound($ar)>18?Ubound($ar):18]
    if UBound($ar)>17 then ;HIER ANPASSEN!!!!!! (nur exsistente Felder zählen)
    for $i=0 to UBound($arSWords)-1 step 1
    if $ar[9]=$arSWords[$i][0] then
    $ar[15]=$arSWords[$i][1]
    $ar[16]=$arSWords[$i][2]
    $ar[17]=$arSWords[$i][3]
    endif
    next
    endif
    $string=""
    for $l=0 to UBound($ar)-1 step 1
    $string&=$ar[$l]
    $tmp=4
    if $ar[15]<>"" or $ar[16]<>"" or $ar[17]<>"" then
    $tmp=1
    endif
    if $l<UBound($ar)-$tmp then
    $string&=";"
    endif
    next
    FileWriteLine($fileD,$string)
    WEnd
    ;Falls deine Schlüsselworte in einer Datei stehen kannst das auch so machen:
    ;Aufbau der datei:
    ; J1;P1;Q1
    ; J2;P2;Q2
    Func _gibSchluesselwoerterAlsArray($file)
    $data=fileread($file)
    $ar=stringsplit($data,@crlf,2+1)
    local $array[UBound($ar)][4]
    for $i=0 to UBound($ar)-1 step 1
    if $ar[$i]<>"" then
    $tmp=StringSplit($ar[$i],";",2)
    $array[$i][0]=$tmp[0]
    $array[$i][1]=$tmp[1]
    $array[$i][2]=$tmp[2]
    $array[$i][3]=$tmp[3]
    endif
    next
    return $array
    EndFunc

    [/autoit]
  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 17. Februar 2015 um 21:19

    ok, hier der code

    [autoit]

    #include <array.au3>
    $file=FileOpen("pricelist.csv",0)
    $zielDatei="out.txt"
    $fileD=FileOpen($zielDatei,BitOR(8,2))
    $arSWords=_gibSchluesselwoerterAlsArray("schlüsselwörter.txt")
    while 1
    $line=FileReadLine($file)
    if @error then
    ExitLoop
    endif
    $ar=StringSplit($line,";",2)
    ReDim $ar[Ubound($ar)>18?Ubound($ar):18]
    if UBound($ar)>17 then ;HIER ANPASSEN!!!!!! (nur exsistente Felder zählen)
    for $i=0 to UBound($arSWords)-1 step 1
    if $ar[9]=$arSWords[$i][0] then
    $ar[15]=$arSWords[$i][1]
    $ar[16]=$arSWords[$i][2]
    endif
    next
    endif
    $string=""
    for $l=0 to UBound($ar)-1 step 1
    $string&=$ar[$l]
    $tmp=4
    if $ar[15]<>"" or $ar[16]<>"" or $ar[17]<>"" then
    $tmp=1
    endif
    if $l<UBound($ar)-$tmp then
    $string&=";"
    endif
    next
    FileWriteLine($fileD,$string)
    WEnd
    ;Falls deine Schlüsselworte in einer Datei stehen kannst das auch so machen:
    ;Aufbau der datei:
    ; J1;P1;Q1
    ; J2;P2;Q2
    Func _gibSchluesselwoerterAlsArray($file)
    $data=fileread($file)
    $ar=stringsplit($data,@crlf,2+1)
    local $array[UBound($ar)][4]
    for $i=0 to UBound($ar)-1 step 1
    if $ar[$i]<>"" then
    $tmp=StringSplit($ar[$i],";",2)
    $array[$i][0]=$tmp[0]
    $array[$i][1]=$tmp[1]
    $array[$i][2]=$tmp[2]
    $array[$i][3]=$tmp[3]
    endif
    next
    return $array
    EndFunc

    [/autoit]

    bekomme das in der out ausgegeben, ich habe jetzt einfach mal vermutet, dass es am Leerzeichen liegt... Insgesamt sind es über 5k die übersprungen werden.

    Code
    "164266;0;EUR;4.19;""USB-Stick  4GB Silicon Power 720 Blue/Alu Case"";""Silicon Power"";SP004GBUF2720V1D;4712702625042;85235110;USB-Speicher;W;0.015;0.126;0.083;0.010;Speichermedien;USB-Stick;"
    "164265;21;EUR;21.60;""USB-Stick  64GB Silicon Power 320 White USB2"";""Silicon Power"";SP064GBUF2320V1W;4712702627800;85235110;USB-Speicher;B;0.013;0.126;0.084;0.010;Speichermedien;USB-Stick;"
    "81174;0;EUR;99999.99;""PC-Schrank DIGITUS 36HE 600x800mm, grau, mit Stahltür"";Digitus;""DN-19 36U-6/8-PC-SD"";4016032227205;94032080;""19"""" Gehäuse"";K;116.800;0.600;0.800;1.750"
    "163838;0;EUR;979.51;""HP Quadro K4200             (4GB,DDR5,active,DVI,2xDP)"";""Hewlett & Packard"";J3G89AA;;84715000;""Grafikkarten NVIDIA"";K;0.000;0.000;0.000;0.000"
    "47202;51;EUR;52.63;""KVM Switch LevelOne  4x USB KVM-0421 mit Audio"";""Level One"";KVM-0421;4015867137871;84719000;""KVM Switches"";B;1.832;0.200;0.370;0.085"
    "163987;0;EUR;462.15;""DDR4 32GB PC 3000 CL15 G.Skill KIT (8x4GB) 32GRBB Ripjaws 4"";G.Skill;F4-3000C15Q2-32GRBB;4719692001771;84733020;Speichermodule;K;0.000;0.000;0.000;0.000;PC-Komponenten;Arbeitsspeicher;"
    "37303;51;EUR;2.50;""Patchkabel equip RJ45 S/FTP Cat6  3.00m grün (SSTP) PIMF HF"";Equip;605542;4015867107348;85444210;""Cat6 Kabel"";B;0.117;0.200;0.330;0.400"
  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 17. Februar 2015 um 14:55

    Ok danke,

    jetzt habe ich noch das Problem, dass wenn in dem Schlüsselwort ein Leerzeichen enthalten ist, also z.B. "Software Lizenzen" dieser Datensatz einfach übersprungen wird. Kann man das noch irgend ändern?

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 17. Februar 2015 um 01:01

    Vielen Dank für die schnelle Antwort.

    Der Fehler lag bei mir, hatte die Datei falsch formatiert.

    Bitte schick mir noch deine PayPal-Adresse oder Bankverbindung.

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 16. Februar 2015 um 20:08

    Sehr cool, vielen Dank,

    wäre es nun noch möglich das man doch zusätzlich noch einen 3. Werte angibt der dann noch mit in die nächste Spalte (R) geschrieben wird?

    Viele Grüße

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 13. Februar 2015 um 16:02

    Stimmt, 15 und 16 sind noch leer...

    ich weiß nicht so genau, was ich anpassen soll :D Sorry

    ich hab es so ausgeführt wie du es geschickt hast, aber die Spalte 15&16 werden nicht gefüllt und die out wird bei jedem versuch größer, vermutlich werden die Datensätze angehangen anstatt die Datei zu überschreiben.

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 13. Februar 2015 um 15:16

    Hi Kanashius,

    irgendwie will das bei mir noch nicht so richtig laufen. (Habe den Ordner mal im Anhand hochgeladen)

    Bitte schick mir noch deine PayPal-Adresse oder Bankverbindung.

    Vielen Dank.

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 12. Februar 2015 um 00:55

    Hi, danke für die zahlreichen Antworten.

    Code
    sku    stock    currency    price    title    manufacturer    msku    ean    egId    lwg1    availability    weight    width    depth    height
    164291    0    EUR    21. Okt    Belkin USB 2.0 HUB, 1:4, Ultraflach, mit Netzteil, Schwarz    Belkin    F4U040CW    7,22869E+11    84718000    HUBs    K    0.000    0.000    0.000    0.000
    164283    0    EUR    Jun 55    USB-Stick  16GB Silicon Power 720 Bronze/Alu Case    Silicon Power    SP016GBUF2720V1Z    4,7127E+12    85235110    USB-Speicher    K    0.015    0.126    0.083    0.010
    164282    0    EUR    Apr 56    USB-Stick  8GB Silicon Power 720 Bronze/Alu Case    Silicon Power    SP008GBUF2720V1Z    4,7127E+12    85235110    USB-Speicher    K    0.015    0.126    0.083    0.010

    Das ist die Datei, möchte nun in Spalte P und Q Werte haben, die abhängig von Spalte J sind.

    Beispiel anhand der drei Datensätze:
    J=Hubs P=Peripherie Q=Hubs
    J=USB-Speicher P=Speichermedien Q=USB-Sticks

    Also die Werte würde ich natürlich je Schlüsselbegriff händisch zuordnen.

    @ Kanashius vielen Dank. Kann ich jetzt einfach das:

    Code
    Case "Was ist J sonst"
     $ar[15]="was ist dann P" ;P=15
     $ar[16]="was ist dann Q" ;Q=16

    beliebig oft kopieren und die Werte entsprechend einsetzen?

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 11. Februar 2015 um 15:01

    Ja grundsätzlich schon, leider habe ich aber keinen Zugriff auf die Datenbank.

    Wenn jemand auf die schnelle etwas schreiben kann, würde auch 10 Euro für das erste funktionierende Skript bieten, dass hier gepostet wird.

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 11. Februar 2015 um 09:09

    Hallo,

    die CSV ist ursprünglich ein Export aus einer Datenbank und wird von uns per php von einem Server heruntergeladen.

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 11. Februar 2015 um 00:19

    Ja also es würde ausreichen, wenn das Skript hinterher 1 mal am Tag läuft. Ausgeführt werden würde es dann nachts auf dem TS, da kann es dann von mir aus auch 30 min ackern...

    Da ich selbst leider recht wenig Ahnung von Autoit oder auch anderen Programmierungen habe, weiß ich leider auch nicht auf welchem Weg ich mein Problem am besten löse :)

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 11. Februar 2015 um 00:07

    Achso ok.

    Mir schwebte bis dato zwar eher sowas wie das vor..

    [autoit]

    For $i = 1 To UBound($array) - 1
    $array[$i] = StringReplace($array[$i], " ", " ")

    [/autoit]

    Aber dann werde ich mich morgen früh mal mit Excel UDF beschäftigen.

    Lässt sich das denn irgendwie mit Excel UDF realisieren, ohne dass Excel die Werte so komisch darstellt wie z.B. EANs 8,8877E+11 oder Preise Jun 29?

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 10. Februar 2015 um 23:35

    Hallo,

    ja habe Excel, nur ist es halt nicht eine einzelne Änderung, sondern die Schlüsselbegriffe nach denen gesucht werden und anhand denen die beiden anderen Spalten gefüllt werden sollen, belaufen sich auf über 300.

    Zudem wird die Datei regelmäßig aktualisiert und bekommt täglich neue Datensätze.

    Deshalb wäre es sehr umständlich das von Hand über Excel zu machen ;)

  • Suchen und ersetzen in einer .csv

    • Bit-Service
    • 10. Februar 2015 um 23:27

    Hallo,

    ich hätte gerne ein Skript, dass diverse Werte in einer .csv (C:\preisliste.csv) in Spalte J einließt und entsprechen mit vorausgewählten Werten die Spalten P und Q füllt. (Also wenn in Spalte J dies steht, dann schreibe in Spalte P das und in Spalte Q jenes...) Das ganze auf alle 46k Datensätze der csv anwenden.

    Beispiel:

    Spalte J Spalte P Spalte Q

    USB-Speicher Speichermedien USB-Sticks

    Hat da vielleicht jemand von euch auf die schnelle etwas zur Hand.

    Das wäre wirklich perfekt.

    Vielen Dank im Vorraus.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™