Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: snifi - 31.03.08 - klo:21.49
-
Miten saan kokonaisesta HTML-sivusta tehdyksi PNG-kuvan? Sen pitäisi olla komentoriviltä käynnistettävissä, ja tallentaa koko sivun alue, joko pienemmissä osissa tai kokonaisena.
-
Tästä vois olla edes jotain apua tai sitten eil. Ei ole mikään komentorivi ohjelma kyllä. http://html2image-linux.guangming-software.qarchive.org/
-
Tästä vois olla edes jotain apua tai sitten eil. Ei ole mikään komentorivi ohjelma kyllä. http://html2image-linux.guangming-software.qarchive.org/
Aika hintava... $299.95 ???
-
Löysin tällaisen Ruby-skriptin:
http://ruby-gnome2.sourceforge.jp/hiki.cgi?Gtk%3A%3AMozEmbed (http://ruby-gnome2.sourceforge.jp/hiki.cgi?Gtk%3A%3AMozEmbed)
require 'gtkmozembed'
w = Gtk::Window.new
w.title = "Lean & mean browser"
w.resize(780, 570)
w << Gtk::MozEmbed.new
w.child.chrome_mask = Gtk::MozEmbed::ALLCHROME
w.child.location = "http://www.ruby-lang.org"
w.show_all
Gtk.main
Nyt pitäisi enää saada sivun sisältö talteen.
http://mirko.lilik.it/Ruby-GNOME2/moz-snapshooter.rb (http://mirko.lilik.it/Ruby-GNOME2/moz-snapshooter.rb)
http://ruby-gnome2.sourceforge.jp/hiki.cgi?RubyGecko#MozSnapshooter+%28HTML+page+thumbnailer%29 (http://ruby-gnome2.sourceforge.jp/hiki.cgi?RubyGecko#MozSnapshooter+%28HTML+page+thumbnailer%29)
Osaisiko joku kasata näistä?
-
Tästä vois olla edes jotain apua tai sitten eil. Ei ole mikään komentorivi ohjelma kyllä. http://html2image-linux.guangming-software.qarchive.org/
Aika hintava... $299.95 ???
Katos, en huomannu ees, että oli maksullinen.. Pahoittelen..
-
Miten saan kokonaisesta HTML-sivusta tehdyksi PNG-kuvan? Sen pitäisi olla komentoriviltä käynnistettävissä, ja tallentaa koko sivun alue, joko pienemmissä osissa tai kokonaisena.
Jos se mahtuu tulostettaessa 1:lle A4:lle, niin sellaisen voi tulostaa aluksi tiedostoon linukassa.
Tuloste.ps
Sen jälkeen imagemagick:n (-paketti, jonka mahdollisesti joudut lisäämään.) convertilla tulostat sen haluamaasi muotoon. Haluamallasi tarkkuudella.
päätteessä:
convert -density 300 tuloste.ps tuloste.png
Edit - ei tämäkään siis ole täysin komentorivillä automatisoitava.
Samanlaista ohjelmaa hain itsekin. Pari vuotta sitten, mutten löytänyt.
Löytyihän ko. säie: http://forum.ubuntu-fi.org/index.php?topic=3991.0
Tilanne on saattanut muuttua, ja ohjelmat ovat saattaneet kehittyä.
Nyttemmin osaisin tehdä vähän fiksummin kuin silloin, mutta en täydellistä ratkaisua.
-
KDE:n Konquerorissa on jopa www-sivun kielenkääntötyökalu. Oliskohan tuolla webbisivu kuvaksi -toiminnolla yleisempää mielenkiintoa yhdeksi selaimen työkaluksi?
-
convert -density 300 tuloste.ps tuloste.png
Edit - ei tämäkään siis ole täysin komentorivillä automatisoitava.
html2ps?
#!/bin/bash
wget $1 -o sivu
cat sivu| html2ps |convert - -density 300 sivu.png
tuota viilailisi?
-
KDE:n Konquerorissa on jopa www-sivun kielenkääntötyökalu. Oliskohan tuolla webbisivu kuvaksi -toiminnolla yleisempää mielenkiintoa yhdeksi selaimen työkaluksi?
Sellainen ohjelma on olemassa, joka ottaa snapshotin konquerorista, mutta haluaisin sellaisen lisäyksen, jolla voisi tulostaa sivu tiedostoon komentoriviltä käsin. Jotenkin tällä tavalla. (En tosin tarvitse sitä niin paljoa, että olisin laittanut tikkua ristiin ko. asian puolesta, joten varsinaista haluamisen kynnystä ko. toiminta ei ole osaltani saanut). Minulla ei ole väliä, millä (kunhan ei IE:llä) valtaselaimella ko. ominaisuus olisi. Tai vaikka IE:llä, mikäli se toimisi Linukassa ilman lisenssiongelmia.
coolselain http://minunsite.com -printtofile:tiedosto.ps
Tietenkin siinä voisi olla myös normaali tulostus:
coolselain http://minunsite.com -print
Näistä ominaisuuksista olisi lähinnä hyötyä ohjelmien kehittäjille, joten olen yllättynyt, ettei FireFoxissa tai Konquerorissa ole vielä ko. toimintoja. Ehkä niitä ei sitten tarvita. ;)
-
html2ps?
En usko, että html2ps:n specifikaatio on riittävän täydellinen. :(
-
import gtkhtml2
import gtk
import urllib
import urlparse
opener = urllib.FancyURLopener()
currentUrl = None
def is_relative_to_server(url):
parts = urlparse.urlparse(url)
if parts[0] or parts[1]:
return 0
return 1
def open_url(url):
uri = resolve_uri(url)
return opener.open(uri)
def resolve_uri(uri):
if is_relative_to_server(uri):
return urlparse.urljoin(currentUrl, uri)
return uri
def request_url(document, url, stream):
f = open_url(url)
stream.write(f.read())
def link_clicked(document, link):
print 'link_clicked:', link
global currentUrl
try:
f = open_url(link)
except OSError:
print "failed to open", link
return
currentUrl = resolve_uri(link)
document.clear()
headers = f.info()
mime = headers.getheader('Content-type').split(';')[0]
if mime:
document.open_stream(mime)
else:
document.open_stream('text/plain')
document.write_stream(f.read())
document.close_stream()
document = gtkhtml2.Document()
document.connect('request_url', request_url)
document.connect('link_clicked', link_clicked)
document.clear()
document.open_stream('text/html')
document.write_stream('<html><head></head><body>Hello, World!<br><a href="http://www.gnome.org/">click me</a></body></html>')
document.close_stream()
def request_object(*args):
print 'request object', args
view = gtkhtml2.View()
view.set_document(document)
view.connect('request_object', request_object)
sw = gtk.ScrolledWindow()
sw.add(view)
window = gtk.Window()
window.add(sw)
window.set_default_size(400, 400)
window.show_all()
gtk.main()
Tämä on Pythonia, ja näyttäisi jotakuinkin renderöivän HTML-sivun sisällön. Komponentit ovat standardeja GTK-kompomentteja, joten tästä ei varmaankaan ole enää pitkä matka kuvaksi tallentamiseen. Asensin aika ison kasan paketteja, mutta luulisin, että tarvittavat ovat lähinnä libgtkhtml2-dev ja python-gtkhtml2, tai ehkä jokin muu libgtk*-alkuinen.
-
Yksi vaihtoehto: PyKHTML
http://paul.giannaros.org/pykhtml/ (http://paul.giannaros.org/pykhtml/)
Tämä käyttää Konquerorin elementtejä, joten vaatii joidenkin lisäpakettien asentamista. Uusin virallinen versio PyKHTML 0.2 ei (vielä) sisällä kuvankaappausmahdollisuutta (kts. API -- browser.screenshot("screenshot.png", screenshotFinished) vaan toimiva versio täytyy asentaa Bazaar Repositorystä (kts. asennusohjeet PyKHTL:n sivulta). Positiivisena puolena on, että tämä renderöi sivun samannäköiseksi kuin Konqueror. Sivun leveys on säädettävissä width-parametrilla ja sivu tallentuu yhtenä kokonaisena kuvana. PyKHTML-sivuilta löytyy valmis esimerkkiohjelma.