Reputation: 2923
I'm looking for any(related?) opensource project that render web-pages at server side and deliver as images to client (mobiles?). Just like Opera Mini and SkyFire. So far, google does not give me a clue as I can't figure it out which term to use. Could you guys give me a clue?
Thanks
Upvotes: 8
Views: 2169
Reputation: 86
There is a similar open source project Browsh, which displays web pages in a Terminal, using true color blocks for images. This significantly reduces data usage. There is even a hosted version at html.brow.sh, although the Terminal version has more features.
Upvotes: 0
Reputation: 6121
Ok, this question is still unanswered and I am interested in such a solution too. Since there is nothing useful findable on the web, I will give it a try. Please understand this answer rather as a concept than a ready to use solution.
Imagine a simple workflow with no user interaction. User opens a website, your server loads the website, renders an image and serves the image to your mobile.
To be sure your image is up 2 date, you will need to update your image on any dom manipulation from javascript too. This is a tricky one because there is no javascript event like "domChanged". So what can you do?
I have tried to build a very small javascript and use it with phantomjs
var page = require('webpage').create();
var i = 0;
page.onResourceReceived = function(response) {
page.render('stocktwits.' + (i++) + '.png');
};
page.open("http://stocktwits.com/home#people-and-stocks");
I am assuming that requested resources are potentially messing up with the dom. But this is not covering any pure javascript setInterval or setTimout function.
Once you got all the "passive" stuff, you can try to extract any hyperlink, form elements and all elements styled with "cursor: pointer;". This is the point where I am stuck right now ... and since this is more a "hobby project" I am going to give up here :-) But let me know if anyone is going further on this.
Upvotes: 0
Reputation: 10386
The Opera Mini servers does not process the websites to images before sending them to phones, but to OBML.
Upvotes: 1
Reputation:
CutyCapt seems to be what you are looking for. It is using WebKit and saves rendered pages in different formats. For example: ./CutyCapt --url=http://www.example.org --out=example.png
Upvotes: 2