Chọn tệp cho applescript Safari đầu vào


2

Tôi đang cố gắng tự động hóa bằng cách tải lên các tập tin Applescript lên một trang web. Tôi đã đi đến gần bước cuối cùng, nhưng dường như không thể có cửa sổ Finder (trình chọn tệp) để trả lời các tập lệnh.

Đây là những gì trang web trông như thế nào (tôi không thể cung cấp cho bạn trang web thực sự, bởi vì nó là một hồ sơ y tế an toàn).

nhập mô tả hình ảnh ở đây

Quá trình tải lên các tệp là nhấn "Thêm hình ảnh" mà tôi có thể làm trong Apple / Javascript và nó hiện ra một cửa sổ Finder (trình chọn tệp) như thế này (một lần nữa tôi chỉ có thể hiển thị một phần vì vấn đề riêng tư). Có các nút "chọn" và hủy "tiêu chuẩn ở phía dưới.

nhập mô tả hình ảnh ở đây

Tôi không thể tìm cách để cửa sổ Finder này phản hồi với Applescript. Tôi đã thử những thứ như:

tell application "System Events"
    keystroke tab
end tell

và nhiều người khác sử dụng Finder, v.v.

Bất kỳ ý tưởng về làm thế nào để chọn một tập tin ra khỏi cửa sổ này? Hoặc đến cửa sổ này? Hoặc thậm chí tìm thấy các thuộc tính của cửa sổ này?

Cảm ơn.


Có phải bạn đang nói rằng bạn biết tập tin và sẽ khó mã hóa nó thành mã.
markhunte

Câu trả lời:


1

Nó không phải là một cửa sổ "Finder". Nó thuộc sở hữu của Safari

Bạn chưa làm rõ làm thế nào bạn biết nên chọn tập tin nào. Vì vậy, tôi giả sử bạn sẽ khó mã hóa một phần vào kịch bản.

Ví dụ này giả định rằng bạn có thể tạo một chuỗi đường dẫn đến tệp.

Ví dụ này cũng được viết để nhấp và thêm hình ảnh vào Câu trả lời trên một trong những trang Hỏi khác nhau này.

Bạn đã biết cách nhấp vào nút bằng Applescript / js

Nhưng bạn có thể sử dụng tổ hợp phím để nhập lệnh G+ cmd+ shift sẽ mở một trang 'Chuyển đến ..' trong cửa sổ hội thoại 'Chọn'.

Sau đó, bạn nhấn phím đường dẫn đến tệp của bạn.

Hai nút tiếp theo 'Đi' và 'Chọn' là các nút mặc định để bạn có thể chỉ cần nhấn phím Quay lại để nhấn chúng.

(Hình ảnh này đã được tải lên bằng cách sử dụng tập lệnh) nhập mô tả hình ảnh ở đây


activate application "Safari"
tell application "Safari"
    tell document 1

        do JavaScript "document.getElementsByClassName('wmd-button')[5].click()"
        delay 1

        do JavaScript "document.getElementById('filename-input').click()"
    end tell

end tell
tell application "System Events"
    keystroke "G" using {command down, shift down}
    delay 1
    keystroke "~/Desktop/image/image.png"
    delay 1
    keystroke return

    delay 1
    keystroke return

    delay 1

end tell

tell application "Safari"
    tell document 1
        do JavaScript "document.getElementById('add-picture').click()"
    end tell
end tell
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.