Python ja klikkaaminen

Pythonaloittelija

Hei.
Olen ajatellut opetella pythonia ja kuten kaikissa ohjeissa käsketään pitäisi aloittaa pienellä ja helpolla ohjelmalla.
Koodini on seuraava:

import autopy
import time

mouse.click(button=LEFT_BUTTON)
time.sleep(0.1)

print "suoritettu"

Eli kyseessä yksinkertainen hiirellä klikkaaminen. (aika on sitä varten että tarkoituksena olisi saada aikaan hiiren painikkeen "ränkytys")
Jostain syystä en saa koodia toimimaan... Autopy on asennettu.
Voisiko joku osoittaa sokealle missä virhe on?

Jatkoksi sitten pyytäisin neuvoa kuinka saan aikaan seuraavan tavoite toteutuksen:
1. siirän itse hiiren siihen kohti ruutua kuin haluan.
2. painan nappia (vaikka kirjainta p )
3. ohjelma alkaa ränkyttää hiiren painiketta.
4. ohjelma lopettaa kun painan painiketta (vaikka s)

Mallikoodi olisi kätevä?

10

160

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • hmhmhm

      Tuo koodi painaa nappia vain kerran, koska siinä ei ole loopppia eli silmukkaa.

      Jos haluat sen painavan monta kertaa sinun täytyy lisätä siihen silmukka.

      Sitten jos tuo autopy ei kuulu siihen viralliseen python pakettiin, niin sinun täytyy ladata ja asentaa tuo autopy.

      Sitten, minkälaisen virheviestin se antaa?

      Kokeile ensin vain tulostaa tekstiä näytölle, ilman autopyta ollenkaan, se on helpoin ohjelma millä aloittaa. :)

      • Pythonaloittelija

        Hei.
        Juu tiedän :) Olin jo "purkanut" koodia osiin (niinkuin seuraavassa viestissä ehdotettiinkin) Eli nyt ei ollutkaan tarkoitus kuin saada aikaan ensimmäinen klikkaus ja jatkaa siihen silmukkaan vasta sitten.

        Autopy on asennettu.
        Errorina antaa ettei muka tunnista nimeä mouse.
        Katselin netistä noita muita koodeja joita on käytetty tämän autopy jutun kanssa ja huomasin tälläisen yksinkertaisen koodin:

        import autopy
        def hello_there_world():
        autopy.alert.alert("Hello, world")
        hello_there_world()

        Tuo koodi toimii hyvin. Onko toi def jutun puuttuminen syynä oman koodin toimimattomuuteen?
        Ohjelma tulostaa myös nätisti ilman tuota autopy:tä.


      • hmhmhm

        def sanalla määritellään funktio pythonissa. Eli funktio on pätkä koodia sisennettynä def sanan jälkeen, joka suoritetaan kun kirjoitat funktion nimen ja sulut perään.

        Eli komento hello_there_world() kutsuu tuota funktiota ja vasta sitten suoritetaan sen sisältö, eli def sanan ja funktion nimenjälkeen sisennettynä oleva kood.

        Funktion tehtävä on tehdä koodista uudelleenkäytettävää, esimerkiksi jos sinulla on joku laskuoperaatio mitä tarvitset monessa paikassa, laitat sen funktioon ja sitten kutsut funktiota kaikissa niissä paikoissa missä tarvitset kyseistä koodia. Silloin sinun ei tarvitse kirjoittaa samaa koodia monta kertaa, ja toisekseen jos koodissa on virhe, kun se on funktiossa, sinun tarvitsee korjata se vain yhteen paikkaan, mikä on paljon helpompaa. :)

        Kannattaa tutustua vaikka tähän oppaaseen:

        http://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=python_01

        Sitten tuosta mouse jutusta, niin minkä virheviestin se antaa?

        Voit myös kokeilla googlata sillä virheviestillä.


      • hmhmhm
        Pythonaloittelija kirjoitti:

        Hei.
        Juu tiedän :) Olin jo "purkanut" koodia osiin (niinkuin seuraavassa viestissä ehdotettiinkin) Eli nyt ei ollutkaan tarkoitus kuin saada aikaan ensimmäinen klikkaus ja jatkaa siihen silmukkaan vasta sitten.

        Autopy on asennettu.
        Errorina antaa ettei muka tunnista nimeä mouse.
        Katselin netistä noita muita koodeja joita on käytetty tämän autopy jutun kanssa ja huomasin tälläisen yksinkertaisen koodin:

        import autopy
        def hello_there_world():
        autopy.alert.alert("Hello, world")
        hello_there_world()

        Tuo koodi toimii hyvin. Onko toi def jutun puuttuminen syynä oman koodin toimimattomuuteen?
        Ohjelma tulostaa myös nätisti ilman tuota autopy:tä.

        Eli siis def sana ei pitäisi olla syy. Sama koodi toimisi myös ilman funktiota, näin:

        import autopy

        autopy.alert("Hello, world")

        :)


      • Pythonaloittelija
        hmhmhm kirjoitti:

        def sanalla määritellään funktio pythonissa. Eli funktio on pätkä koodia sisennettynä def sanan jälkeen, joka suoritetaan kun kirjoitat funktion nimen ja sulut perään.

        Eli komento hello_there_world() kutsuu tuota funktiota ja vasta sitten suoritetaan sen sisältö, eli def sanan ja funktion nimenjälkeen sisennettynä oleva kood.

        Funktion tehtävä on tehdä koodista uudelleenkäytettävää, esimerkiksi jos sinulla on joku laskuoperaatio mitä tarvitset monessa paikassa, laitat sen funktioon ja sitten kutsut funktiota kaikissa niissä paikoissa missä tarvitset kyseistä koodia. Silloin sinun ei tarvitse kirjoittaa samaa koodia monta kertaa, ja toisekseen jos koodissa on virhe, kun se on funktiossa, sinun tarvitsee korjata se vain yhteen paikkaan, mikä on paljon helpompaa. :)

        Kannattaa tutustua vaikka tähän oppaaseen:

        http://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=python_01

        Sitten tuosta mouse jutusta, niin minkä virheviestin se antaa?

        Voit myös kokeilla googlata sillä virheviestillä.

        Hei.
        Eli virhekoodi on seuraava:

        Traceback (most recent call last):
        File "C:\Users\.....\Desktop\eka ohjelma.py", line 4, in
        mouse.click(button=LEFT_BUTTON)
        NameError: name 'mouse' is not defined

        Ja kiitos tuosta oppaasta, onnistuin sen jo kerran hukkaamaan kun katsoin ettei klikkaamisesta ollut mitään :)
        Kyllähän tämä tästä pikkuhiljaa. :D Onneksi on lehmän hermot ;)


      • hmhmhm
        Pythonaloittelija kirjoitti:

        Hei.
        Eli virhekoodi on seuraava:

        Traceback (most recent call last):
        File "C:\Users\.....\Desktop\eka ohjelma.py", line 4, in
        mouse.click(button=LEFT_BUTTON)
        NameError: name 'mouse' is not defined

        Ja kiitos tuosta oppaasta, onnistuin sen jo kerran hukkaamaan kun katsoin ettei klikkaamisesta ollut mitään :)
        Kyllähän tämä tästä pikkuhiljaa. :D Onneksi on lehmän hermot ;)

        Tuo virhe sanoo, että nimeä "mouse" ei ole määritelty.

        Elikkä se ei löydä sellaista kuin mouse. :)

        Se voi olla, että sinun pitää muuttaa se muotoon

        autopy.mouse.click(LEFT_BUTTON)


      • hmhmhm

        from autopy.mouse import LEFT_BUTTON

        ja tämä ^^^^ pitää varmaan lisätä tiedoston alkuun vielä.


      • Pythonaloittelija

        Kiitoksia neuvoista.
        Nyt kun noudatin molempia noista neuvoista niin tulee uusi error viesti:

        Traceback (most recent call last):
        File "C:\Users\....\Desktop\eka ohjelma.py", line 4, in
        autopy.mouse.click(button=LEFT_BUTTON)
        TypeError: click() takes no keyword arguments


      • Pythonaloittelija

        Hei taas.
        Sain klikkauksen toimimaan kun löysin tämän sivun:
        http://nullege.com/codes/search/autopy.mouse.click
        Kaikki esimerkit joita tuossa annettiin eivät minulla toimineet mutta löysin toimivankin mallin :)
        Eli tuossa apua niille jotka saattavat apua etsiä.
        Kiitos kaikille vastanneille.


    • hmhmhm

      Ongelman syyn selvittämiseksi myös kannattaa jakaa se pienempiin osiin. Ota koodista niin paljon tavaraa pois, että se toimii. :)

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Purra hyökkää nyt suomalaisen duunarin kimppuun teettämällä mamuilla palkatonta työtä

      Niinpä niin. Persut duunaripuolue, HAH. Joko alkaa kovapäisinkin persu älyämään, että persut ovat Suomen kansan vastain
      Maailman menoa
      365
      12317
    2. Purra ehdottaa vaan Tanskan mallia, joka on erittäin hyvä malli

      Purra ehdotti helmikuussa Suomeen Tanskan mallia, jossa maahanmuuttajilta vaaditaan työntekoa sosiaalitukien saamiseksi.
      Maailman menoa
      255
      5387
    3. Kokoomusnuoret: Sosiaalitukien työvelvoitteen tulisi koskea kaikkia

      Riikka Purra on esittänyt, että maahanmuuttajilta tulisi edellyttää palkatonta työtä sosiaalitukien vastineeksi. Kokoom
      Maailman menoa
      212
      3918
    4. Purra vaatii: Työvelvoite maahanmuuttajille ja kantasuomalaisille pitkäaikaistyöttömille

      Jos Perussuomalaiset ja Kokoomus ovat seuraavan hallituksen kaksi johtavaa puoluetta, on suomalaisille pitkäaikaistyöttö
      Perussuomalaiset
      196
      2588
    5. Jyrki Linnankivi, Jyrki 69 - Goottirokkarista kirkonmieheksi Lappiin!

      Jyrki Linnankivi eli Jyrki 69 on The 69 Eyes -rockyhtyeen vokalisti. Lauluhommien lisäksi hän sanoittaa, säveltää ja sov
      Työ ja opiskelu
      15
      1972
    6. Onnea Maria ja Vilma Amazing Race -voitosta!

      Maria Guzenina ja Vilma Vähämaa voittivat Amazing Race Suomi -kisan. Voiton hetkellä Guzenina paljasti, miksi valitsi Vi
      Tv-sarjat
      19
      1824
    7. Mikä on mielestäsi paras miestyyppi?

      Esimerkit kärjistettyinä: a) perustavallinen/tasainen b) himourheilija c) varakas, turvallinen elättäjä d) puolikrimina
      Ikävä
      167
      880
    8. Martina Aitolehti

      Instagramissa pomppas esille Martinan kumipallot. Ihan säikähin. Ja tää on Martina-ketju!
      Kotimaiset julkkisjuorut
      271
      842
    9. No kolahtaako kukaan

      Samalla tavalla kuin mä? Harmi kun et uskaltanut kohdata. Ehkä me löydetään jotkut muut jotka voi olla konkreettisempiak
      Ikävä
      74
      762
    10. Rippituoli

      Kerro joku synkkä tai outo salaisuus, joka liittyy ikävääsi kaivattuasi kohtaan. Tee tunnustus anonyyminä. Se helpottaa
      Ikävä
      59
      716
    Aihe