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 5 sati, 30 minuta
  • smayoo: RIP Renato Baretić :(
  • dpasaric: Cijene su ti iste kao u Švicarskoj, kada to prihvatiš, sve bude jednostavnije! :)
  • ping: @drlovric Geneva?
  • ping: A
  • drlovric: Jucer sam stigao a vec sam blago sokiran hrvatskim cijenama. Neke stvari vrijedjaju inteligenciju, ali valjda se brzo naviknem :)
  • smayoo: O, brate, kakav pacijent.. :)
  • dpasaric: Joj on je inače lud tip, ali ovo je skroz fora! :)
  • drlovric: Kakva bolest od videa :) [link]
  • dpasaric: Novi mega-članak na naslovnici! Nije za svakoga, ali za one koji to vole bit će poslastica! :)
  • zoranowsky: Također!
  • vicko: Pridružujem se čestitkama!
  • smayoo: Čestitam svima Dan antifašističke borbe!
  • roPeD: Pokrenuo temu u Softver forumu
  • smayoo: Piši u forum i probaj biti jasniji
  • roPeD: Lijepo molim
  • roPeD: Jel bi netko znao prebaciti onaj nas stari Mini Rijecnik da ga mozemo koristiti sa novim operativnim sustavima i M chipovima
  • roPeD: Pozdrav svima
  • drlovric: Zasto instalirate bete na aktivne uredjaje koje koristite svaki dan :/ Mozda je bolje da ti je bankarstvo prestalo raditi, nego da radi nesto sto ne znas :)
  • ZeljkoB: iOS18 dev beta kad je izasao nije polomio nista, ali 17ica je ubila ZABA app...
  • dpasaric: Meni to zvuči kao logična prva stvar koja će se polomiti.
  • ZeljkoB: Je li tko probao iOS26, a da mu ZABA app i dalje radi OK?
  • hal9000: Sretan rođendan i dobrodošao u klub!
  • drpongrac23: Hvala svima!
  • ping: Sretan rođendan
  • dpasaric: Sretan ti! :)
  • zoranowsky: Sretan ročkas!
  • Yonkis: Sretno ti rođendanovo!
  • smayoo: Sretan ti rođendan! :)
  • drpongrac23: Danas sam ušao u 5-u DEKADU ŽIVOTA!!! Živjeli svi!!!
  • hal9000: [link]
  • Riba: Odnio vrag prisu!
  • hal9000: Za 30-ak godina većina nas ni neće više biti živo pa koga briga za responsive site! :D
  • Borisone: Ma nije to, nego se sada početna stranica učita u tren oka. Treba bar 3-4 sekunde da bi bilo moderno.
  • Riba: Uostalom, nije Jabucnjak neresponsivan nego je vama ekran premalen! :-D
  • dpasaric: I nisi boomer, ti si gen X! :)
  • dpasaric: Zašto bi itko išao na ovaj tip weba s mobitela? :)
  • Riba: Hoce, vec je u pripremi godinama ali je implementacija malo zapela...plus sto ne pomaze sto ja boomer nikada ne idem na jabucnjak sa mobilnog uredjaja. :)
  • CoffeePod: Jabucnjak*
  • CoffeePod: Hoce li Jabuvnjak ikad dobit reponsive sajt?
  • cariblanco: Danas smo u Osijeku, možda shebali turističku sezonu :D
  • dpasaric: Slijedi uskoro osvrt na naslovnici...
  • Air: ...a Applevom slučaju iako te fore drugi telefoni imaju već godinama, ali kad to Apple napravi mi bi se trebali diviti tome kao toploj vodi.
  • Air: Meni Keynote izgleda kao kad Trum hvali samo sebe i svoje odluke kao ono baš najbolje, iako ga je cijeli Svijet popljuvao...
  • drlovric: Na Mac, Spotlight je odlican, kao i boja foldera (konacno) :)
  • drlovric: iPad je odlicno profitirao. Ako sve ovo ne zakljucaju za najnovije modele only :)
  • Riba: Keynote mi je kao neka epizoda Teletubbiesa.
  • Riba: Gledam taj WWDC i razmisljam kako su teme o umiranju mozda privlacnije. :-D
  • dpasaric: Idemo mi na ljepše teme, WWDC je za sat vremena! :)
  • dpasaric: Sve pet, ali nije li zanimljiva statsitika da je od zadnjih 30-ak (toliko pratimo na jednoj internoj grupi objave u medijima) sportaša, umjetnika i ostalih poznaith osoba koje su iznenada umrle, uzorak cijepljenih 100%. A znamo da je kod nas situacija bila cca 50:50, znači nešto lomi statistiku. Evo, samo to primjećujem.
  • smayoo: To što nije u javnosti poznato što je prethodilo njegovoj smrti, ne znači da nije prethodilo ništa čega bi ta smrt bila logičan i sasvim vjerojatan ishod. Moj pokojni stari je umro u 59. godini i svima koji ga nisu jako dobro znali je to bilo "iznenada". Nas koji smo mu bili bliski nije baš *iznenadilo*, iako nam je bilo teško i bolno.

Za vikanje moraš biti prijavljen.

Prijava

Prisutni jabučari

Riba, rkoren5, tino1, VanjusOS, Anonimci (499)

Novo na Jabučnjaku

Teme

Poruke

Oglasi

Anketa

Koji Mac koristite?

Page Speed 0.97 Seconds

Provided by iJoomla SEO