2011-08-03 1 views
2

apple automator를 사용하여 웹 페이지를 다운로드하고 저장하는 사파리를 원합니다.AppleScript : Safari에서 웹 페이지를 저장할 수 없음 (AppleEvent Handler에서 오류가 발생 함)

tell application "Safari" 
    set URL of document 1 to "http://www.python.org" 
    delay 6 
    get document 1 
    delay 6 
    save document 1 in "/mydir/" & "python" & ".htm" 
end tell 

사파리 올바른 URL을 표시하지만 그때 사파리에서 다음과 같은 오류를 얻을 : 열려 사파리 창으로, 나는 애플 스크립트 편집기에서 다음 스크립트를 실행

"문서"파이썬 프로그래밍 언어 - 공식 웹 사이트 "를"python.htm "으로 저장할 수 없습니다."

그 오류 상자에서 "확인"버튼을 클릭 한 후 애플 스크립트 편집기 대화 상자에서 날이 오류를 제공합니다

"애플 스크립트 오류
사파리에 오류가있어이 :. AppleEvent 핸들러 실패"

애플 스크립트 편집기 "결과"라고 하단에있는 상자를 가지고 있으며, 그것은 또한 다음과 같은 메시지가 나타납니다 : "오류"사파리에 오류가있어

이 :. AppleEvent 핸들러 실패 "번호 -10000"

그리고 웹 페이지가 저장되지 않습니다. 나는이 b/c의 원인이 무엇인지 모르겠다. 나는 과거에 페이지를 저장하기 위해이 같은 (또는 비슷한) 코드를 사용하고 있다는 것을 99 % 확신하고있다.

이상하게도, "tell application 1"과 "document 1"을 "tell application safari"블록 바깥쪽으로 옮기고 "python.htm"으로 applescript를 저장했고 파이어 폭스로 열었을 때 모든 구피를 보았습니다. . 그래서 문제는 Safari가 일반적으로 osx를 저장할 수없고 저장할 수없는 것 같습니다.

또한 chmod를 사용하여 대상 저장 디렉토리의 모든 권한을 모두 (bash의 777 인수 사용)로 변경했습니다.

소프트웨어를 여러 번 다시 시작했습니다.

사파리 : 버전 5.1 (6534.50)
는 OSX 스노우 레오파드 (Snow Leopard) : 버전 10.6.8 애플 스크립트 2.1.2
애플 스크립트 편집기 버전 2.3 (118)
내가 곁에있어 여기

내 버전입니다 내 휴대폰으로, 그것을 모바일 액세스 포인트로 사용합니다. 그게 중요한지 나는 모른다.

Why does this AppleScript get an "AppleEvent handler failed" error on Mac OS X 10.5 Leopard?

누구는 추측을 가지고 :

나는이 사람이 같은 오류가 있지만 답을 찾은 것 같아? 감사.

답변

1

나는 진짜 대답을 모른다. 그러나 그것은 50+ views와 tumbleweed를 가지고있다. 그래서 나는 뭔가를 게시 할 것이라고 생각했다.

분명히 당신은 컬을 사용하기로되어있어 (내가 macscripter에 게시물을보고 그들이이 어쩌면 다른 이름으로 저장 "을 사용 할 수있는 방법이 없다"갈 수있는 유일한 방법 "이라고 말했다

tell application "Safari" 
    set URL of document 1 to "http://www.python.org" 
    delay 6 
    get document 1 
    set my_html to URL of document 1 
end tell 

set my_new_file to "/Users/your_user_name/python.htm" 
set my_script to "curl " & my_html & " >> " & my_new_file 

do shell script my_script 

"Safari에서 이것은 일반적인 AppleScript 오류입니다.하지만이 답변은 AppleScript 보드가 아닙니다. 어쨌든, 원래 게시물이 작동해야하고 더 잘 알지 못합니다.사람들이 보드 또는 Google을 통해 이것을 찾으면 대답이 도움이 될지도 모릅니다. 아니면 이것이 명백한 해결책 인 경우 수정을 원하는 것일 수도 있습니다.)

+0

아니요, 이것은 obvoius 솔루션이 아닙니다. 그리고'quoted form of my_new_file'을 사용하는 것을 잊지 마십시오. 그렇게하면 솔루션이 작동합니다. :) – fireshadow52

+1

나는 그것을 내 애플 스크립트 편집기에서 붙여 넣었고 작동했다. 그래서 나는 그것이 효과가 있다고 생각한다. 둘째 줄부터 마지막 ​​줄까지 my_new_file은 세 번째 행에서 마지막 행으로 설정된 문자열 변수입니다. 어쩌면 너무 많은 줄이있어 읽을 수 없습니다. "end tell"다음에 나오는 내용을 모두 지우고이 줄로 바꿀 수 있습니다. shell script "curl"& my_html & ">>"& "/Users/you_user_name/python.htm" – PatentDeathSquad

관련 문제