Applescript i/ili Automator workflow
(1 korsinik/a gleda/ju temu) (1) Gost

Applescript i/ili Automator workflow


11.01.2014 | 14:07
Dakle, u Francuskoj se knjige za školu ne mogu kupit u knjižarama (!) već se naručuju preko škole pa preko županijske agencije za obrazovanje pa onda od izdavača. Imam jednu učenicu koja se prebacila iz druge škole u moju ali ne samo to, promijenila je usmjerenje tako da joj neke knjige ne pašu (a inače je dijete rastavljenih roditelja, otac u zatvoru, mater pijandura, komplikacija stotine) .

Međutim, ta agencija već mjesec ipo dana komplicira oko reizdavanja knjige iz matematike tako da ta mala ništa ne može kući pratit i ima jako loše ocjene. Kako se ovdje jako negativno gleda na fotokopiranje, jadna ne može fotokopirat knjigu iako je to totalno nekomercijalna namjena, to je meni palo na pamet da joj ja pronađem scan te knjige i dam na sticku.

Ona se složila jer kući ima komp i to bi joj bilo super. Mogla bi to i ona sama da ima internet doma ali nema. Nikako ne mogu nać PDF na netu. Ono što mogu nać je stranica izdavača koji nudi nekakav flash preglednik te knjige gdje je na svakoj od stranica watermark uzorak (što je nebitno jer ne prekriva nikakve brojke ni definicije).

Kako mi stranica ne dozvoljava download (logično) dosjetih se screenshotovima. No, knjiga ima 504 stranice i stvarno mi se ne radi 504 puta: SHIFT+CMD+4 pa SPACE pa CLICK da snimi pa CLICK da ode na drugu stranicu. Daklem, treba to automatizirat.

Uspio sam sklepat nekakav applescript za dio: SHIFT+CMD+4 pa SPACE i to radi

set fileName to do shell script "date \"+Screen Shot  %Y-%m-%d at %H.%M.%S.png\""
	tell application "System Events" to set thePath to POSIX path of desktop folder
	do shell script "screencapture  -W " & "\"" & thePath & "/" & fileName & "\""


ali clickovi u Safariju mi ne idu.

Evo što sam probao:

repeat 504 times
	set fileName to do shell script "date \"+Screen Shot  %Y-%m-%d at %H.%M.%S.png\""
	tell application "System Events" to set thePath to POSIX path of desktop folder
	do shell script "screencapture  -W " & "\"" & thePath & "/" & fileName & "\""
	repeat 2 times
		tell application "System Events"
			tell process "X"
				click at {1252, 482}
			end tell
		end tell
	end repeat
end repeat


Safari je aktivna aplikacija, ali mi svejedno izbacuje grešku:
error "System Events got an error: Can’t make {1252, 482} into type list." number -1700 from {1252, 482} to list


So... I need help
11.01.2014 | 16:20
...ali clickovi u Safariju mi ne idu.

Nije tvoja greška. Na Mavericksu je polomljen "click at", do 10.8.5 radi dobro.

Ako si osuđen na Mavericks, trenutno imaš dva workarounda:

1) Automator - njegov action "Watch Me Do" može kliknuti gdje treba - ne programira se već se snima (sa "Record", gore desno, u prozoru Workflowa) i mogu se naknadno počistiti nepotrebno snimljeni eventi. Napominjem da je dosta nespretan za kontrolu i da se defaultno replay snimljenog izvršava u realnom vremenu (ali može se ubrzati s Playback Speed sliderom).

2) Blümov "Cliclick" utility (free je). Kad ga skineš, iskopiraj "cliclick" u neki path iz kojeg ćeš ga pozivati. Možeš privremeno na Desktop pa AppleScript za kliknuti u Safariju na koordinate 400, 100 glasi:

tell application "Safari" to activate
do shell script "/Users/<username>/Desktop/cliclick c:400,100"

Zamijeni <username> nazivom vlastitog home foldera.


Možda postoji i jednostavnije rješenje (kontaktirati izdavača, objasniti problem?). Pomoglo bi da si poslao link na konkrentu stranicu s knjigom.
11.01.2014 | 16:38
Nisam osuđen samo na Mavericks, imam i particiju sa dobrim starim 10.6.8. no hvala svakako.

Kontaktiranje izdavača nije pomoglo - oni me upućuju na tu agenciju jer su "primorani" da se svi poslovi odvijaju preko iste. PDF ne žele donirat jer se boje redistribucije...

A link, evo ga: pvevent1.immanens.com/fr/pvPage2.asp?puc=2628&pa=1&nu=1
11.01.2014 | 18:37
Na 10.6.8. mi applescript editor veil da mi skripta ima grešku, ali ne kaže koju, samo da je expected end of line koji nije pronađen.

Na Mavericksu sam probao Automator. Klikovi rade ali nakon što scripta "pritisne" CMD+SHIFT+4 pa SPACE, klik ne hvata. Ja onda kliknem mišem, a potom Automator odradi 2 klika koja je trebao odraditi. Gledao sam tajming i sve, al neće pa neće.

Ista priča sa cliclickom.

12.01.2014 | 01:42
Na 10.6.8. mi applescript editor veil da mi skripta ima grešku, ali ne kaže koju, samo da je expected end of line koji nije pronađen.

Koja skripta? Možeš li utvrditi za koji točno red u toj skripti javlja grešku tako što ćeš ili izvršiti jednu po jednu naredbu (dok ne prijavi grešku) ili uklanjati jednu po jednu (dok greška ne "nestane" )?

Na Mavericksu sam probao Automator. Klikovi rade ali nakon što scripta "pritisne" CMD+SHIFT+4 pa SPACE, klik ne hvata. Ja onda kliknem mišem, a potom Automator odradi 2 klika koja je trebao odraditi. Gledao sam tajming i sve, al neće pa neće.

Zašto bi screenshot iz Automatora radio simulirajući klikove? Imaš action za to: Take Screenshot.

Ista priča sa cliclickom.

Njega si probao u skripti pod Mavericskom? Što točno ne radi?

Probaj ga prvo direktno iz shella, da vidiš kako se uopće koristi. AppleScript bi trebao odraditi posao stavljanja željenog prozora (Safari), odnosno sadržaja u njemu, u prvi plan - tako da se klik dogodi tamo gdje treba (u protivnom sam AppleScript Editor, ili Terminal, mogu "smetati" ).



Primijeti nešto: web na linku kojeg si dao na dnu ima mogućnost upisa broja stranice (od 1 do 504). Kad je upišeš, promijeni se URL i na kraju dobije varijablu "gotopa=42" (ako si prethodno upisao 42, za prikazati 42 stranicu) - to prikaže stranice 42 i 43, jednu do druge. Znajući to, emulirati kliktanje postaje nepotrebno - umjesto toga izvrti petlju 252 puta koja će ići od 1 do 503 (namjerno izostavljam zadnju stranicu - nema bitan sadržaj, a krati logiku petlje), u koracima po 2 (1, 3, 5...) i učitavaj stranice varirajući "gotopa" (od "gotopa=1" do "gotopa=503" ). Daj svakoj stranici dovoljno vremena da se stigne učitati i ispravno prikazati - i nakon toga screenshotaj.

Vezano za screenshotanje, nisam dokučio zašto se u skripti trudiš generirati onako kompleksno ime screenshota, odnosno čemu bi ti služili datum i vrijeme. Ne znam što ti je ciljani output, ali ako je serija screenshota, vjerojatno bi bilo korisnije da su nazvani prema brojevima stranica koje prikazuju. Tako bi se moglo koristiti i kazalo.
12.01.2014 | 20:18
Da pokratim...

set myURL to "http://pvevent1.immanens.com/fr/pvPage2.asp?nu=1&skin=hafeu2&puc=002628&aff=WLI&gotopa="
repeat with myPage from 1 to 503 by 2
  tell application "Safari"
    set the URL of the front document to (myURL & myPage)
    activate
  end tell
  delay 10
  set myPath to ((POSIX path of (path to desktop)) & "screenshots/" & myPage & ".jpg") as string
  do shell script "screencapture -tjpg " & quoted form of myPath
end repeat
tell application "AppleScript Editor" to activate

Prije nego izvršiš skriptu Safari mora ili biti quitan ili prikazivati neku stranicu (u koju će se učitati novi URL). Preporučam imati dignuti Safari, učitanu bilo kakvu stranicu i uključenu Full Screen opciju kako bi zauzeo cijelu površinu monitora, da screenshot bude maksimalno iskoristiv. Pripazi da delay, ovisno o brzini Interneta koju imaš, bude dovoljno dug (u skripti je 10 sekundi - toliko čeka PRIJE nego napravi screenshot). Screenshot radi kao jpg i screenshota cijeli ekran. Snima ga u folder "screenshots" koji mora biti otvoren na Desktopu, a screenshote imenuje neparnim rednim brojevima i ekstenzijom jpg (od 1.jpg do 503.jpg).

Svrha zadnjeg reda skripte je da prikaže AppleScript Editor kad obavi capture svih stranica, da znaš da je gotovo.
13.01.2014 | 15:20
Hvala ti Djipi ko bratu! Ima samo jedan problem s tvojim pristupom - ja nemam velik monitor Imam samo 13" i 1200*800 rezoluciju, tako da full screen koliko god zauzme nije dovoljno prostora da bude čitko.

Zato sam ja forsirao screenshot prozora a ne zaslona i petljao s klikovima
13.01.2014 | 17:24
Spoji neki vanjski monitor ili projektor.
13.01.2014 | 18:12
Ne bu išlo. Monitori u školi su svi 1280x1024 a projektori 1024x768.

Hvala Djipiju koji je to odradio umjesto mene na svom megamonitoru.
Moderatori: Bertone
  • Stranica:
  • 1

Vikalica™

Zadnja poruka: pred 3 sati, 36 minuta
  • accom: Evo, čitam o zidiću i gledam Baltazara... jel to bila prva AI mašina na svijetu?
  • dpasaric: To se i meni dogodilo par puta, uvijek prije objave napravim barem copy u buffer, a često ako je nešto kompleksnije, samo paste u TextEdit, just in case.
  • Yonkis: I pretraga je beskorisna, zato sam pisao novu temu jer mi je trebalo manje vremena da ju natipkam i dodam screenshotove nego da češljam rezultate pretrage.
  • Yonkis: Jedem ti jabucnjak, napišem novu temu i nisam odabrao Forum i sve mi izbriše kad sam kliknuo PROVJERI. Odsutajem, 20 min tipkanja otišlo u vjetar. Nikakav alert ili nešto da iskoči da me upozori.
  • ZeljkoB: Zaba na dev beti radi bez greske
  • dpasaric: Vidio sam neke na Twitteru da su stavili dev betu, ali nisu ovdje.
  • mbp2009: ne vidim neke konkretne info na netu za to
  • mbp2009: Ne znam odakle ove diskusije poticu, ali da vidim, ima li koga na dev beti ios? Pogotovo ovaj dio me zanima za PBZ i poslovnu PBZ, ako radi
  • dpasaric: Čekam da mi dođe jedan zanimljiv komad hardvera, pa ću finalizirati velik pregled monitora koji će mnogima biti koristan!
  • dpasaric: "Your request has been processed"
  • Ender: takodje i ja molim admina da obrise i moj korisnicki nalog. ostavljam mogucnost da se kasnije opet prijavim kad i ako se neke stvari promene. pozzz i svako dobro.
  • dpasaric: @Air U redu, razumio sam. Hvala ti na svemu onom pozitivnom, ono drugo će srediti vrijeme.
  • jura22: Vrijeđaj partizane i Tita pa da vidiš.
  • Air: Ako si razumio onda napravi to, a ne da moram pisali litanije za jednostavan zahtjev.
  • dpasaric: Air, naravno da je dovoljno, ako to želiš mogu i ja odmah, ali hej, jutro je pametnije od večeri, prespavaj, pa javi, najmanji je problem kliknuti na delete.
  • Air: Zanimljiv vam je latinski. Uživajte. Između vaših upisa napišite što je potrebno da zatvorim račun na Jabučnjaku ako nije očigledno dovoljno razumljivo ovo što sam napisao na vikalici.
  • smayoo: Canis mater studiorum. Stara studentska. :D
  • dpasaric: @Gjuroo: Per aspera ad astra!
  • Gjuroo: @Air: Illegitimi non carborundum.
  • dpasaric: Chill out i vidjet ćeš kako će ovo sada biti ugodnije, korisnije i pozitivnije mjesto za sve korisnike.
  • dpasaric: Joj ne drami.
  • Air: Molim odgovornu osobu da obriše Air račun.
  • Air: U ovim novim okolnostima transparentnog licemjerstva pojedinca podvlačim crtu. Ja nemam želudac za trpiti to da mi jedan licemjer briše čiste postove samo zato što on ima problem u svojoj glavi. Kako je tino1 rekao bilo mi je zadovoljstvo dolaziti na Jabučnjak radi ljudi. Ovim putem pozdravljam sve dobre ljude Jabučnjaka i HVALA vam! Nakon ovog upisa brišem svoj račun.
  • dpasaric: Sve što je sada obrisano u "kafanskim laprdanjima" je bilo u dogovoru s Djurom, počistili samo za sobom i tko hoće može tamo dalje s "lakim temama".
  • drlovric: @Rusty: Slazem se 100%. Svako bira za sebe. Jedna tema u sekciji Razno, nije smetala nikome ko je dosao da konzumira nesto drugo. Ako sam dosao u ducan da kupim povrce, zasto bi mi smetalo sto prodaju i hranu za bebe? :)
  • rusty: Evo kao dugogodišnji član foruma, moram priznati da niti jednom nisam otvorio političke teme niti sudjelovao u njima na forumu. Dolazim vidjeti non političke, non automobili teme. I jedna i druga su mi kao nogomet, besmislene i ne interesantne. Da li će mi faliti, ne. Da li ću manje dolaziti na forum, ne.
  • dpasaric: To je tvoje viđenje.
  • dpasaric: Obećajem da ćemo je izreklamirati na forumu, pa tko voli…
  • Air: Znam tvoje ovlasti. Nije u tome problem. Problem je što se Jabučnjak predstavlja kao pozitivan, a ovo što ti radiš je negativno!
  • dpasaric: Evo, pokreni i ti moderiraj Signal grupu za vaše političke rasprave.
  • dpasaric: I probaj biti koristan. Pokreni nešto pametno i svima korisno.
  • dpasaric: Pročitaj kućni red još jednom.
  • Air: @dpasaric Otvorio si javni komunikacijski kanal. Tko si ti da brišeš postove iste tematike o kojoj sam pišeš, ako ti postovi nisu uvredljivi i ne krše nikakav zakon?
  • dpasaric: Poanta je da je besmisleno dalje širiti raspravu.
  • Air: Fakat imaš teških osobnih problema
  • Air: Protiv "cara" se ne smije ništa pisati?
  • Air: Smetati osobno?
  • Air: i zašto si obrisao ovaj moj tekst is te teme?
  • Air: u temi kafanska laprdanja
  • Air: @dpasaric Samostalno, ničim izazvan optužio si Djuru za nešto. Djuro ti je odgovorio. Budi čovjek, pa kada si "zagrizao" odgovori čovjeku na njegovu cijelu obranu. - stavku po stavku.
  • Air: Skrećeš TEMUsa svojih LOŠIH djela na svoja DOBRA djela (koja nitko ne spori).;)
  • dpasaric: Propast su lijenost i jalovo lamentiranje. Tko je vrijedan i radi neće propasti.
  • dpasaric: Jabučnjak je do svoje punoljetnosti davao odličnu pomoć svakome tko je došao i bez vaših političkih prepucavanja.
  • dpasaric: Vaša hipoteze su potpuno promašene! :) Ono kao "super je imati stalno aktivnu crnu kroniku jer će onda puno ljudi to čitati, pa će ti koji to čitaju pomagati drugima." Bez brige, tko treba pomoć dobit će je i bez crne kronike.
  • Air: Represija i samovolja su isključivo put u propast
  • drlovric: Represija i samovolja nikada nije rjesenje.
  • drlovric: Plenkovic je porucivao Hrvatima kome nije dobro neka ide u DE. Bis bald. A danas drzava daje pare povratnicima jer kapital su ljudi. Ako nas KGB sve rastjera odavdje, ovaj forum ce sam sebi biti svrha :)
  • Air: Mislim da je uvreda za članove jabučnjaka koji su aktivni u političkim temama na jabučnjaku uspoređivati ih sa ekipom koja “troši” takve teme na drugim portalima. Iako smo svakodnevno na forumu neke od tih politički tema nemaju upisa po nekoliko dana. To znači da ekipa nije “ovisna” o tome da non-stop nešto serucka nego se upisuje kad netko nešto ima.
  • Air: Na osnovu ovoga dolazimo da je vrijednost ovog foruma u ljudima koji su svakodnevno aktivni na forumu, a to je uz pomoći ovih političkih tema.
  • Air: Druga vrijednost je već navedena, a to je što je forum sa takvim temama bio aktivan, i ljudi su tada bili prisutni pa su češće otvarali tehničke teme i više pomagali. Danas, a pogotovo u skoroj budućnosti više neće biti potreba za ovakvim tehničkim forumima jer će ljudi pomoću AI-a brže i učinkovitije naći rješenja svog problema.

Za vikanje moraš biti prijavljen.

Prijava

Novo na Jabučnjaku

Teme

Poruke

Oglasi

Anketa

Koji Mac koristite?

Page Speed 0.53 Seconds

Provided by iJoomla SEO