Công cụ dòng lệnh tốt để tạo ảnh chụp màn hình của trang web trên Linux là gì? Tôi cần phải tự động tạo ảnh chụp màn hình của các trang web mà không có sự tương tác của con người. Công cụ duy nhất tôi tìm thấy là khtml2png, nhưng tôi tự hỏi liệu có những công cụ khác không dựa trên khtml (tức là có hỗ trợ JavaScript tốt, ...).Chương trình dòng lệnh để tạo ảnh chụp màn hình trang web (trên Linux)
Trả lời
Một chi tiết nhỏ hơn có thể có ích ...
Bắt đầu firefox (hoặc trình duyệt khác) trong phiên X, trên bảng điều khiển của bạn hoặc sử dụng vncserver. Bạn có thể sử dụng các tùy chọn --height
và --width
để đặt kích thước của cửa sổ thành toàn màn hình. Một lệnh firefox khác có thể được sử dụng để thiết lập URL được hiển thị trong cửa sổ firefox đầu tiên. Bây giờ bạn có thể lấy hình ảnh màn hình bằng một trong nhiều lệnh, chẳng hạn như lệnh "nhập" từ gói Imagemagick hoặc sử dụng gimp hoặc fbgrab hoặc xv.
#!/bin/sh
# start a server with a specific DISPLAY
vncserver :11 -geometry 1024x768
# start firefox in this vnc session
firefox --display :11
# read URLs from a data file in a loop
count=1
while read url
do
# send URL to the firefox session
firefox --display :11 $url
# take a picture after waiting a bit for the load to finish
sleep 5
import -window root image$count.jpg
count=`expr $count + 1`
done < url_list.txt
# clean up when done
vncserver -kill :11
Điều này làm việc tốt đẹp, ngoại trừ firefox '-display: 11' cần phải là' --display =: 11' Nhưng bạn đã cho tôi một điểm khởi đầu tuyệt vời! Cảm ơn vì điều đó! –
Rất đẹp. Cần thêm thông tin. Giống như tùy chọn --display. Làm sao mà bạn biết được điều đó? Tài liệu để làm việc này ở đâu. Lý do là, tôi cần chương trình để mở toàn màn hình. Khi tôi nhận được một ảnh chụp màn hình Firefox không phải là toàn màn hình nhưng trong một cửa sổ nhỏ thay đổi kích thước. – shrimpwagon
Điều này sẽ được chuyển hướng đến: [Công cụ No-GUI để chụp ảnh màn hình của các trang web] (https://softwarerecs.stackexchange.com/q/16422/25142) – marcanuy
Tôi biết nó không phải là công cụ dòng lệnh nhưng bạn có thể dễ dàng tạo kịch bản để sử dụng http://browsershots.org/ Không hữu ích cho các ứng dụng không được lưu trữ trên IP bên ngoài.
Một công cụ tuyệt vời không kém phần nào.
Thực ra tôi nghĩ rằng tôi có thể sử dụng mã từ dự án này để viết phiên bản địa phương của riêng tôi thay vì gửi nội dung thông qua browsershots.org (vì nó dành cho một công ty). – ujh
Tôi không biết bất cứ điều gì tùy chỉnh xây dựng, tôi chắc chắn rằng có thể có một cái gì đó thực hiện với động cơ tắc kè để trả cho một file png thay vì màn hình ...
Hoặc, bạn có thể cháy lên firefox ở chế độ toàn màn hình trong một cá thể máy chủ VNC chuyên dụng và sử dụng trình chụp màn hình chụp màn hình để chụp ảnh màn hình. Toàn màn hình = tối thiểu chrome, ví dụ máy chủ VNC = không hiển thị giao diện người dùng + bạn có thể chọn độ phân giải của mình.
Sử dụng xinit với Xvnc làm máy chủ X để thực hiện việc này - bạn sẽ cần phải đọc tất cả các trang.
Nhược điểm là rằng ảnh chụp màn hình luôn luôn là cùng kích thước, không thay đổi kích thước theo quy định của trang web ...
Có là nhập khẩu lệnh, nhưng bạn sẽ cần X, và một chút bash tập lệnh mở cửa sổ trình duyệt, sau đó chụp ảnh màn hình và đóng trình duyệt.
Bạn có thể tìm thêm thông tin here, hoặc chỉ cần gõ nhập khẩu --help trong một vỏ;)
scrot là công cụ dòng lệnh để chụp ảnh màn hình. Xem số man page và số tutorial này.
Bạn cũng có thể muốn xem kịch bản trình duyệt. Có các add-on firefox chụp ảnh màn hình như screengrab (có thể chụp toàn bộ trang nếu bạn muốn, không chỉ là bit hiển thị) và sau đó bạn có thể chạy trình duyệt bằng greasemonkey để chụp ảnh màn hình.
Liên kết làm việc với scrot: http://freshmeat.net/projects/scrot/ –
@Computer Guru - liên kết đã sửa, cảm ơn bạn –
http://khtml2png.sourceforge.net/
Các deb nộp
làm việc trên Ubuntu của tôi sau khi cài đặt libkonq4 ... nhưng bạn có thể có để trang trải phụ thuộc khác.
Tôi cho rằng hỗ trợ javascript có thể tốt hơn bây giờ!
Stephan
Không cho dòng lệnh nhưng ít nhất để sử dụng trong hoạt động hàng loạt cho một tập lớn của các url mà bạn có thể sử dụng firefox với FireShot addon của nó (phiên bản được cấp phép?).
- Mở tab cho tất cả các url trong tập hợp của bạn (ví dụ: "tab đang mở cho tất cả dấu trang trong thư mục này ...").
- Sau đó, trong mắt FireShot "Capture tất cả các tab"
- Trong cửa sổ soạn thảo sau đó gọi "chọn tất cả các bức ảnh -> lưu tất cả các bức ảnh"
Sau khi thiết lập các thuộc tính chụp màn hình (kích thước, fileformat, vv) trước khi bạn kết thúc bằng một tập hợp các shotfiles đẹp.
Steffen
Hãy thử đẹp công cụ nhỏ CutyCapt, mà chỉ phụ thuộc vào Qt và QtWebkit. ;)
Tốt hơn nhiều so với câu trả lời được chấp nhận. – exic
CutyCapt là một công cụ tuyệt vời, nhưng tôi đã sử dụng phông chữ phông chữ và chúng không được hiển thị chính xác. – MarcDefiant
Rất tiếc, nó không báo cáo kết quả tải xuống dưới dạng mã thoát. – Grzegorz
Xem Webkit2png.
Tôi nghĩ rằng đây là những gì tôi đã sử dụng trong quá khứ.
Chỉnh sửa Tôi phát hiện ra tôi chưa sử dụng ở trên, nhưng đã tìm thấy this page với các đánh giá về nhiều chương trình và kỹ thuật khác nhau.
Hãy xem PhantomJS, có vẻ như là một công cụ Webkit có thể ghi được miễn phí chạy trên Linux, OSX và Windows. Tôi đã không sử dụng nó vì chúng tôi hiện đang sử dụng Browshot (giải pháp thương mại), nhưng khi tất cả các khoản tín dụng của chúng tôi hết, chúng tôi sẽ nghiêm túc lo lắng (vì nó miễn phí và có thể chạy trên máy chủ của chúng tôi)
Tôi vừa thử cái này (phantomjs) trên tài khoản hostmonster của mình, một" nếu nó hoạt động ở đây nó có thể làm việc ở bất cứ đâu "môi trường. 1. tải xuống tarball 2.untar tarball 3. vào thư mục bin 4. cắt và dán ví dụ thế giới hello từ trang bắt đầu nhanh của họ. 5. chạy hellow thế giới – godzilla
(tiếp từ bài viết cuối) 6. chờ một vài phút (tôi nghĩ rằng nó bị nhốt nhưng nó chỉ mất một thời gian cho lần đầu tiên). 6 cắt và vượt qua ví dụ dưới đây helloWorld.js 7. thay đổi example.com đến trang web bạn muốn ảnh chụp màn hình. 8. chạy ví dụ 5 phút tôi đã làm để làm điều này là rất ít đau hơn tring để có được webkit2png làm việc, thanx MaxiWheat xin lỗi cho 2 bài riêng biệt, chỉnh sửa bộ đếm thời gian chạy ra ngoài – godzilla
- 1. Chụp ảnh màn hình trang web theo chương trình
- 2. Làm cách nào để chụp ảnh màn hình/hình ảnh của trang web bằng Python?
- 3. Chụp màn hình trang web có JavaScript?
- 4. Android chụp màn hình theo chương trình
- 5. Chụp màn hình android và tạo video theo chương trình
- 6. Ảnh chụp màn hình trang web (HTML5 Canvas/Services)
- 7. Máy chủ Tạo ảnh chụp màn hình web?
- 8. Ảnh chụp màn hình Webdriver
- 9. Cách chụp màn hình toàn bộ trang web, thay vì hiển thị trên màn hình
- 10. Chuyển đổi URL thành ảnh chụp màn hình (tập lệnh)
- 11. Chụp ảnh màn hình của trang web và lấy Hình ảnh (ASP.NET)
- 12. Chụp ảnh màn hình trang web, phía máy chủ, trên máy chủ được thuê Linux, miễn phí
- 13. tạo ảnh chụp màn hình của trang web bằng cách sử dụng jquery
- 14. Có cách nào để tự động chụp ảnh màn hình trang web thông qua URL không?
- 15. Nhận ảnh chụp màn hình từ trang ASP.Net
- 16. Video chụp màn hình trong iOS theo chương trình
- 17. * trên dòng lệnh linux
- 18. Làm thế nào tôi có thể lập trình tạo ảnh chụp màn hình của một trang Web cụ thể?
- 19. Ảnh chụp màn hình từ dịch vụ nền của một ứng dụng khác (theo chương trình)
- 20. Làm cách nào để lập trình chụp ảnh màn hình của ứng dụng trong Linux?
- 21. Tại sao ảnh chụp màn hình được tạo theo chương trình của tôi trông rất tệ trên iOS 7?
- 22. Làm cách nào để bạn chụp Ảnh màn hình của một trang web qua mã .Net?
- 23. Tôi có thể chụp ảnh màn hình các trang web bằng Perl bằng cách nào?
- 24. Làm cách nào để chụp ảnh màn hình theo chương trình?
- 25. Trình tạo Sơ đồ trang web Dòng lệnh Linux: Mọi đề xuất?
- 26. Làm thế nào để chụp một ảnh chụp màn hình trang web đầy đủ với C# và WebKit.NET?
- 27. Tạo toàn bộ ảnh chụp màn hình trang sử dụng QWebPage
- 28. Chụp ảnh màn hình có lập trình trong OSX
- 29. Làm cách nào để chụp ảnh màn hình của các trang web bằng ruby và máy chủ Unix?
- 30. Chụp ảnh màn hình máy tính để bàn bằng javascript
Một cách nhanh chóng khác để thực hiện việc đó là sử dụng màn trập: Cài đặt: * $ apt-get install shutter * Chạy: * $ shutter --web = http: //mail.ru -e * ' – 0x8BADF00D
Chủ đề tại đây: http://softwarerecs.stackexchange.com/questions/16422/no-gui-tool-to-take-screenshots- của các trang web –