How can I take a screenshot/image of a website using Python?
On the Mac, there's webkit2png and on Linux+KDE, you can use khtml2png. I've tried the former and it works quite well, and heard of the latter being put to use.
I recently came across QtWebKit which claims to be cross platform (Qt rolled WebKit into their library, I guess). But I've never tried it, so I can't tell you much more.
The QtWebKit links shows how to access from Python. You should be able to at least use subprocess to do the same with the others.
Capture screenshot of browser content (website)
Do you know about Selenium?
It's a testing tool that actually opens a specific browser and runs scripted tests.
It can be used to take screenshots as well.
This might be a solution to your problem.
How to control the screenshots of my website in the recently used websites list shown on the new tab in my browser
I think I finally got it solved.
First of all, the "application manifest" does not help.
Based on @Peter's answer I found a way to implement it without loosing the browser cache for my "usefull" code, and keeping URL intact.
To archive it, I use a "main" page, that is the actual URL for the browser (-->thumbnail), with no caching, but it just contains a frame, where my "real" page is called internally. The real page does use caching, but since the website URL is the "no cache page", it seems thumbnail is not always the login page, even when the new page tab thumbnail points to my "main" page.
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache no-store">
<meta http-equiv="expires" content="0">
<title>My Website</title>
</head><body style="margin: 0;">
<iframe src="init_index_main.jsp" name="main" style="position:fixed; top:0px; left:0px; bottom:0px; right:0px; width:100%; height:100%; border:none; margin:0; padding:0; overflow:hidden; z-index:999999;" ></iframe>
</body>
</html>
So actually I implement all 3 recommendations of Peter, avoiding their side effect. Actually, I was already using the frame workaround to hide the real URL to the (common) users.
Of course if the user opens a link in a new tab, leaving the "main" frame, it could generate a thumbnail, but that's no the normal flow so I can live with it.
Related Topics
Codeigniter - Call to a Member Function Result() on Boolean In
How to Get Comma Separated Values from a Table in Laravel
Auto Update Cart on Click in Woocommerce
How to Remove Duplicate Rows in Laravel
Character Encoding for French Accents
How to Pass Something With Apostrophe to Json
Fatal Error: Call to Undefined Function Sqlsrv_Connect()
Laravel Storage Link Won't Work on Production
Laravel: Display Difference Between Two Dates in Blade
Php Get Number of Week for Month
How to Run Angular App on Xampp Server
How Would I Skip Optional Arguments in a Function Call
How to Prevent Xss With Html/PHP
How to Implement Basic "Long Polling"
How to Remove Duplicate Values from a Multi-Dimensional Array in PHP
How to Get the Client Ip Address in PHP