我需要通過網址獲取網站的全屏鏡頭,有沒有任何PHP程序或者服務,如果沒有,是否有任何Java程序用於該目的?我如何能採取網站的全屏截圖
回答
有很多方法:
Litmus是這種事情的一個很好的在線資源;您可以提交一個URL並使其在最新的瀏覽器上進行全屏截圖。如果您獲得付費訂閱或在週末使用它,您將可以在所有22種瀏覽器上進行測試,而不僅僅是最新的測試。我一直使用這個網站,我認爲這是驚人的。
BrowserShots也很大,並且它支持噸以上的瀏覽器,但在我的經驗,這是一個很大得慢。不過,如果你需要需要來測試一些瀏覽器,石蕊不會。
您需要有一個特殊版本的瀏覽器,在之後「渲染」頁面,它由PHP或Java處理。
當您ping運行Windows,OSX或Linux窗口管理器的服務器後,您最有可能需要設置一些自定義自動化腳本來點擊URL。
有服務在那裏會爲你做屏幕截圖。
http://webthumb.bluga.net/home
僅舉幾例。
如果您有專用的服務器,您也可以自己做。這個想法是以全屏模式啓動X服務器和瀏覽器,進行拍攝並將其保存到圖像文件中。
根據您的利用率(偶爾或密集),可以適應的過程中(即不殺生X每次,等...),使其更快。
從問題中不清楚您是否希望以編程方式或手動執行此操作。如果是手動的:Firefox有一個很好的插件Abduction!,它將頁面渲染爲圖像。否則,凱恩的答案已經涵蓋了很多。
我發現CutyCapt是採取截圖的最簡單的解決方案,它會在Windows和Linux工作。
Installinging在Windows:
只需下載文件並執行。
Installining Debian中:
apt-get install cutycapt xvfb
和運行:
xvfb-run --server-args="-screen 0, 1024x768x24" /usr/bin/cutycapt --url=http://www.google.com --out=/home/screenshots/screenshot_name.png
對我來說,最好的解決辦法: 使用selenium webdriver 而採取的截圖可以是簡單的this:
import java.io.File;
import java.net.URL;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.Augmenter;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
public class Testing {
public void myTest() throws Exception {
WebDriver driver = new RemoteWebDriver(
new URL("http://localhost:4444/wd/hub"),
DesiredCapabilities.firefox());
driver.get("http://www.google.com");
// RemoteWebDriver does not implement the TakesScreenshot class
// if the driver does have the Capabilities to take a screenshot
// then Augmenter will add the TakesScreenshot methods to the instance
WebDriver augmentedDriver = new Augmenter().augment(driver);
File screenshot = ((TakesScreenshot)augmentedDriver).
getScreenshotAs(OutputType.FILE);
}
}
不要忘記使用FireFoxDriver。 HtmlUnitDriver不會以這種方式工作,因爲它是無頭的。
該死的容易!
但是你需要Selenium服務器運行並安裝firefox瀏覽器才能正常工作? – newbie 2014-06-29 12:02:50
@newbie安裝Firefox瀏覽器required.But沒有需要運行Selenium服務器。您只需將所需的庫導入到您的Java項目中。 – rahulserver 2014-06-29 15:44:25
試試headless browser。其中任何一項應該這樣做:
- PhantomJS - >使用 '的Webkit' 佈局引擎(Safari瀏覽器/鉻)
- TrifleJS - >使用 '三叉戟' 佈局引擎(Internet Explorer)中
- SlimerJS - >採用「壁虎佈局引擎(火狐)
您可以通過下面的JavaScript代碼採取截圖(保存到文件renderpage.js
):
var page = require('webpage').create();
page.open('http://en.wikipedia.org', function() {
page.render('wikipedia.png');
});
然後通過命令行執行:
> phantomjs.exe renderpage.js
這將創建一個文件wikipedia.png
你的屏幕截圖。
- 1. 採取網站的屏幕截圖,只有網址
- 2. 如何截取網站的截圖
- 3. 如何採取屏幕截圖和截屏保存在相冊
- 4. 如何在我的Java項目採取的屏幕截圖
- 5. 如何抓取網站並截取每個網頁的截圖?
- 6. 的Windows Phone不採取截圖完全
- 7. xna 4採取桌面屏幕截圖
- 8. iPhone - UIImagePickerController採取屏幕截圖?
- 9. iOS採取多個屏幕截圖
- 10. Phantomjs - 截取網頁的屏幕截圖
- 11. 採取整個網頁的屏幕截圖
- 12. 我如何獲取許多網站的縮略圖截圖?
- 13. 如何使用阿紹特硒採取截屏整個網頁
- 14. html2canvas外部網站的屏幕截圖
- 15. 節點puppeteer採取截圖全頁SPA
- 16. 網站抓取和截圖
- 17. 如何在運行javascript後截取網頁的屏幕截圖
- 18. 如何使用Python截取網站截圖/圖像?
- 19. 我如何可以採取截屏,並將其保存在PHP
- 20. 採取屏幕的特定部分的屏幕截圖
- 21. 如何截取指定網站的截圖?
- 22. 的MapView不採取全屏
- 23. Jbehave - 全屏截圖
- 24. 編程式網站屏幕截圖
- 25. 試圖採取視圖的屏幕截圖和它的孩子
- 26. 保存某個對象的屏幕截圖在網站上我的網站
- 27. 如何從網址獲取網頁的屏幕截圖
- 28. 在python腳本中抓取開放網站的屏幕截圖
- 29. 採取截圖+ ipad的
- 30. 如何採取遊戲截圖用OpenGL
哇,#2真棒!必須記住未來。 – snicker 2009-09-28 18:51:58