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 12 sati, 41 minuta
  • Ender: chuck norris je pobedio zivot :)
  • smayoo: Rak je prebolio Chucka Norrisa... :)
  • Yonkis: [link] P.U.M Carlos Ray Norris
  • zoranowsky: R.I.P. Chuck Norris
  • Yonkis: generative AI apps paid Apple close to $900 million in App Store fees last year - [link]
  • cariblanco: [link]
  • drlovric: Team MacBook Pro M. Deremo. Ovo je jedna od rijetkih situacija gdje sam ja u vecini :)
  • dpasaric: Anketa je ažurirana novim modelom, znači i dalje ima smisla, govori nam što tko koristi ovdje.
  • Yonkis: p.s. kad će neka nova anketa? :)
  • Yonkis: Može netko Tim Apple pitati što je sa ovim AirDropom, jesu magneti u pitanju ili atmosferski pritisak u pitanju da radi kako je oglašavano?
  • dpasaric: Juhu za Poguea! :)
  • Yonkis: Ajde napokon da se tu nešto slatko pojede, neka bude i kalorijska bomba, preživjeti ćemo :)
  • Performita: Javio mi se David Pogue, pripremam poslasticu za Jabučnjak ????????
  • Yonkis: Ovo nije mjesec ovo je jutro [link]
  • Air: Ha ha, evo radi sa iPhonea - pitam se kad će već ova čuda implementirati u ozbiljnije fotoaparate?
  • Air: [link]
  • Air: probao sam samo C/P, probao sam C/P foru kojom ubacujem link u post, ali nefunkcionira kod mene
  • Riba: Probaj preko nekog url shortenera.
  • Riba: Samo ga upises ali mislim da ju neki znakovi zbune.
  • Air: Kako u vikalicu ubaciti link?
  • smayoo: @Yonkis - meni je to sve poisključivano, uvijek i oduvijek. Jedino imam uključeno da stavlja točku kad lupim dva razmaka i da automatski stavlja veliko slovo iza točke.
  • rusty: First 50 knjiga shipped!
  • Yonkis: Da li i vama iOS tipkovnica krivo ispravlja riječi a zanimljiv mi je ovaj primjer [link]
  • ZoPaj: iPhone Book i iPhone Book Neo
  • Yonkis: Preklopni iPhone, bit će kad tad, samo kako će se zvati? [link]
  • Yonkis: Apple prvih 50 godina [link]
  • Bertone: MA pusti ga, cendra bez veze, da mu je bilo bitno probudio bi se u pet :D
  • Djuro genijalac: A jbg, sori
  • Yonkis: Baš hvala na spoileru. I to ne na Alfi.
  • Djuro genijalac: Dvostruka pobjeda Mercedesa! Opet runda za sve!
  • Djuro genijalac: I ja dam napraviti od jabuka iz vrta, ali to potraje do Božića, maks, ako je dobar urod
  • smayoo: Mi od šogoricinih jabuka iz Požege :)
  • Djuro genijalac: Koji? I ja pijem sok od jabuke. U pravilu onaj iz Lidla 100% kojeg miješam s vodom pola-pola
  • smayoo: Ja ću jedan sok od jabuka, prirodni, mutni. :)
  • Djuro genijalac: Kaj pije jabučnjak? Ja plaćam rundu!
  • Djuro genijalac: Mercedes 1-2 u kvalifikacijama Melbournea!
  • Ender: ranije sam vidjao da linus koristi intel- MB Air. meni je to bilo dovoljno.
  • dpasaric: Linus voli popljuvati Apple, često i opravdano, ali kada on nešto hvali, znači da su zaista odradili dobar posao...
  • hal9000: E da sam i ovo doživio: [link]
  • Performita: Vikalica je još uvijek jednako cool kao prije! Osobito smajlići :)
  • dpasaric: Ma i to isto, ali to će valjda s novim HomePodima i s navodnim HomePadom...
  • zvone: Gdje je novi Apple TV? Nikako da stigne.
  • dpasaric: Javit ću cijene čim ih dobijemo...
  • Borisone: U Italiji Neo kreće od 699 EUR. Kod nas može biti samo više, pretpostavljlam standardnih 70-100 EUR
  • dpasaric: Osvrt na novotarije je na naslovnici, pa slobodno komentirajte!
  • Yonkis: Jeftin u USA, za studoše osnovni Neo je 500$ a koliko će biti kod nas? A tek onaj sa TouchIDom?
  • cavarovobrdo: Očekivao sam vrišteće boje iMac G3. Nekako mi je NEO uređaj za mlađariju, zato veselo. Rado se sijećam svog MacBook black plastenjaka :)
  • drlovric: Meni je Neo bas cool.....kao nekada plasticni Macbook. jeftinij je nego iPhone i odlicna ulaznica u Mac svijet.
  • invictus: Neo? Svašta oni sebi dozvole.
  • accom: ništa od boje ajvara.

Za vikanje moraš biti prijavljen.

Prijava

Novo na Jabučnjaku

Teme

Poruke

Komentari

Anketa

Koji Mac koristite?

Page Speed 0.67 Seconds

Provided by iJoomla SEO