2016-02-19 80 views
0

好吧,這可能是一個複雜的。跟別的建議一樣。我想創建一個腳本,我可以從一個命令行運行,它將獲取一個HTML頁面列表並將它們轉換爲一個動畫gif(按照我提供的順序)。速度是一個考慮因素,但在這個階段,任何想法無論長時間囉嗦都是受歡迎的使用命令行從多個HTML頁面創建動畫gif

爲了測試我的HTML頁面:

回答

0

你的意思是在瀏覽器顯示頁面第一,因爲它們是捕獲?

(編輯:從評論,顯然沒有) 看一看http://phantomjs.org/screen-capture.html
我不能讓它與你的網頁的工作,但我認爲可能。
它可以很好地與其他網站(如stackexchange)。 此外,BBC有時候會對來自澳大利亞的請求有點好笑......

我下載了64位Linux版本,取消了tar目錄,並嘗試使用這個超級基本腳本。

hello.js

console.log('Start ...'); 

var page = require('webpage').create(); 
page.open('http://www.stackoverflow.com', function(status) { 
    console.log("Status: " + status); 
    if(status === "success") { 
    page.render('example.png'); 
    } 
    phantom.exit(); 
}); 

我的選項來運行調試器(Chrome瀏覽器可視範圍)開始,但我後保釋。

phantomjs-2.1.1-linux-x86_64/bin/phantomjs --remote-debugger-port=9000 --remote-debugger-autorun=yes hello.js 

我會離開原來的答案在這裏對於誰可能想這樣做,在桌面上的人benifit,以及爲GIF動畫轉換。

對於來自GUI桌面捕獲:從命令行

  • 遙控瀏覽器
  • 處理圖像

    • 捕捉的屏幕截圖

    然後,它會是關於得到的時間正確的腳本。雖然「速度是一個考慮因素」,我們說幾秒鐘還是幾分鐘?

    甲roughie例如:
    安裝 'scrot' 作爲一個屏幕抓取

    apt-get install scrot 
    

    imagemagick/convert可能已經安裝?

    apt-get install imagemagick 
    

    最大限度地提高您的默認瀏覽器

    運行以下命令:

    #!/usr/bin/env python 
    import time 
    from subprocess import Popen 
    
    
    wobpages = ['http://www.bbc.co.uk/sport','http://www.bbc.co.uk/news','http://www.bbc.co.uk/weather'] 
    x =1 
    for page in wobpages: 
        Popen(["xdg-open", page]) 
        time.sleep(8) 
        img = 'wobpage%s.png' % x 
        Popen(["scrot", img]) 
        x += 1 
    opt = "convert -delay 100 -loop 0 *.png animation.gif" 
    Popen(['/bin/sh', '-c', opt]) 
    
  • +0

    謝謝,我給這一個去回覆你。我預見到的唯一問題是'最大化您的默認瀏覽器' - 我無法訪問GUI,因此瀏覽器需要無法訪問。 –

    +0

    啊,請參閱修訂版 – Mbo42

    +0

    感謝您花時間深入研究,我將其標記爲已接受的答案。 –