OSX'te web sayfalarını PDF olarak kaydeden bir “makro” nasıl kaydedilir


1

Sık sık sayfaları OSX'te Chrome'dan PDF olarak kaydederim. Sayfa apple-P'dir ve ardından PDF düğmesini ve "PDF Olarak Kaydet .." menü öğesini tıklatın. Her zaman önceden doldurulmuş dosya adını kullanır ve varsayılan dizine kaydederim.

Bunu bir otomatik komut dosyası olarak kaydetmek mümkün mü? Eğer mümkünse, bunu Chrome'da bir yere bir düğme olarak eklemek istediğimden eminim, böylece "bunu daha sonra okumak için kaydedebilirim"

Herhangi bir yardım için teşekkürler.


Bilginize, instapaper.com web sayfalarını çevrimdışı okumak için kaydetmek için mükemmel bir hizmettir.
goppe

Evet biliyorum ama istemiyorum. Şu anda bir web sayfasını PDF olarak kaydetmenin bir yolunu istiyorum.
dwatson

Yanıtlar:


2

Bunu yalnızca Safari ve Chrome ile test ettim, ancak daha karmaşık bir komut dosyası için bu konuya bakın .

delay 0.3 -- time to release modifier keys if the script is run with a shortcut
tell application "System Events" to tell (process 1 where frontmost is true)
    if name is "Google Chrome" then
        keystroke "p" using {option down, command down}
        delay 0.1
        tell menu button 1 of window 1
            click
            click menu item "Save as PDF…" of menu 1
        end tell
        keystroke "l" using {option down, command down}
        keystroke return
    else
        keystroke "p" using command down
        tell menu button 1 of sheet 1 of window 1
            click
            click menu item "Save as PDF…" of menu 1
        end tell
        keystroke "l" using {option down, command down}
        keystroke return
    end if
end tell

Wkpdf dosyasını da kullanabilirsiniz , ancak sayfanın tekrar yüklenmesi gerekiyor ve kimlik doğrulama veya blok reklamlarla çalışmaz.

tell application "Google Chrome" to tell active tab of window 1
    set u to URL
    set t to title
end tell
do shell script "wkpdf --source " & quoted form of u & " --output ~/Desktop/" & quoted form of t & ".pdf"

Sistem Tercihlerinde ⌘P'ye "PDF Olarak Kaydet ..." atarsanız, diyaloğu yalnızca PP tuşuna basarak (veya Chrome'da ⌥⌘P ve ⌘P) basılı tutarak açabilirsiniz.


Bu benim için birkaç küçük değişiklikle çalışıyor. Automator'ı girişsiz bir Hizmet oluşturmak için kullandım ve yalnızca Chrome için bir AppleScript Çalıştır işlemi ekledik ve yukarıdaki betiği Applescript metni olarak yapıştırdım. Automator'un sağladığı “çalıştırma ()” sargısı kaynatıcısı içinde olduğu gibi veya ayrıca çalıştı. Yeni Automator Hizmeti'ni "ChromePrintPDF.workflow" olarak adlandırdım. Daha sonra Sistem Tercihleri> Klavye> Klavye kısayollarına gittim ve yeni servis için bir kısayol tuşu ekledim. Önceden tanımlanmış hiçbir şeyle çelişmeyen Ctrl + Alt + Opt + P kullandım. Çalışır
Ağustos Mohr

Tuşa basıldıktan sonra ve "anlat menü düğmesine" basmadan önce "gecikme 0.1" değerini artırmak zorunda kaldım, çünkü pencere açıldıktan sonra ve başka bir şey yapmadan önce Otomator hatalarını almaya devam ettim. Gecikmeyi 0,5'e çıkardım ve daha fazla hata yapmadım. Aynı zamanda, ilk yazarın sisteminin bir yerde benimkinden çok daha hızlı olması durumunda başka bir yerde olabileceği fikrine dayanarak ilk gecikmeyi 0,3'ten 0,5'e çıkardım.
Ağustos Mohr

0

Automator'da Servis şablonunu kullanın. Hizmet alan hiçbir girdi içinde Google Chrome.app , iş akışı Kamu> ardından, Me Do İzle o Otomatı tarafından yakalanabilir böylece yazdırma işlemi gerçekleştirin. (Chrome hiçbir Otomatikleştirici eylemi sağlamaz, ancak Beni İzle Beni sadece Evrensel Erişim gerektirir.)

Alternatif olarak, AppleScript'i kullanabilirsiniz, ancak işlerin tam olarak nasıl referans alınacağına karar vermek "ilginç" olabilir ve sözlüğünün standart yazdırma ayarları türüne göndermediğini fark ettim, bu nedenle Yazdır iletişim kutusunu kontrol edemeyebilirsiniz.


Beni İzle Yap eylemini açıkça kullanırken nasıl kaydedebilir ? Bunu yalnızca İş Akışı »Kayıt ile yapmayı, Beni İzle Beni otomatik olarak oluşturmayı başardım . Ayrıca, Safari’nin nasıl etkinleştirildiğine dikkat etmesi gerekir, pencereye tıklamak onu ada göre ilişkilendirir ( Pencereyi Etkinleştir "google chrome - Bir ... nasıl kaydedilir" veya benzeri bir şey), Dock simgesini tıklatmak daha güvenlidir. Ve hala çoğaltması için çok zaman harcıyorum - sanırım otomatik gizli bir Dock veya hızlı fare hareketlerinden hoşlanmıyor.
Daniel Beck

Yapmam gereken şey bu! Google Chrome Hizmetleri menüsünde görünüyor, ancak denediğimde ve çalıştırdığımda bir hata veriyor; "Beni İzle Beni" Eylemi bir hata yaptı "Automator'da Beni İzle eylemi şöyle diyor: -" Dosya "menüsünü tıklayın. - Yazdır ... - PDF olarak kaydet ... - "Kaydet" düğmesine basın PS - Beni izle eylemini kendim eklemek zorunda değildim, menajer olarak otomatik olarak kayıt düğmesine basın.
dwatson
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.