2008-09-24 9 views
62

लिनक्स पर वेबसाइटों के स्क्रीनशॉट बनाने के लिए एक अच्छा कमांड लाइन टूल क्या है? मुझे मानव संपर्क के बिना वेबसाइटों के स्क्रीनशॉट स्वचालित रूप से उत्पन्न करने की आवश्यकता है। मुझे मिला एकमात्र उपकरण khtml2png था, लेकिन मुझे आश्चर्य है कि क्या ऐसे लोग हैं जो khtml पर आधारित नहीं हैं (यानी अच्छा जावास्क्रिप्ट समर्थन है ...)।वेबसाइट स्क्रीनशॉट (लिनक्स पर) बनाने के लिए कमांड लाइन प्रोग्राम

+0

में कुछ और है ... – Stobor

+0

ऐसा करने का एक और त्वरित तरीका शटर का उपयोग करना है: इंस्टॉल करें: * $ apt-get इंस्टॉल शटर * रन: * $ शटर --web = http: //mail.ru -e * ' – 0x8BADF00D

+0

यहां विषय पर: http://softwarerecs.stackexchange.com/questions/16422/no-gui-tool-to-take-screenshots- वेबसाइटों –

उत्तर

54

थोड़ा और विस्तार उपयोगी हो सकता है ...

एक फ़ायरफ़ॉक्स (या अन्य ब्राउज़र शुरू) एक एक्स सत्र में, या तो आपके कंसोल पर या vncserver का उपयोग कर। विंडो के आकार को पूर्ण स्क्रीन पर सेट करने के लिए आप --height और --width विकल्पों का उपयोग कर सकते हैं। पहली फ़ायरफ़ॉक्स विंडो में यूआरएल प्रदर्शित होने के लिए एक और फ़ायरफ़ॉक्स कमांड का उपयोग किया जा सकता है। अब आप कई छवियों में से एक के साथ स्क्रीन छवि को पकड़ सकते हैं, जैसे Imagemagick पैकेज से "आयात" कमांड, या जिंप, या fbgrab, या 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 
+1

यह अच्छा काम करता है, फ़ायरफ़ॉक्स को छोड़कर '-डिस्प्ले: 11' को '--डिस्प्ले = 11' होने की आवश्यकता है, लेकिन आपने मुझे एक महान प्रारंभिक बिंदु दिया! उसके लिए धन्यवाद! –

+0

बहुत अच्छा। हालांकि अधिक जानकारी की आवश्यकता है। - डिस्प्ले विकल्प की तरह। आप कैसे जानते हैं? ऐसा करने के लिए प्रलेखन कहां है। कारण है, मुझे पूर्ण स्क्रीन खोलने के लिए प्रोग्राम की आवश्यकता है। जब मुझे स्क्रीनशॉट मिलता है फ़ायरफ़ॉक्स पूर्ण स्क्रीन नहीं है लेकिन एक आकार बदलने योग्य छोटी विंडो में। – shrimpwagon

+0

इसे पुनर्निर्देशित किया जाना चाहिए: [वेबसाइटों के स्क्रीनशॉट लेने के लिए नो-जीयूआई उपकरण] (https://softwarerecs.stackexchange.com/q/16422/25142) – marcanuy

2

मुझे पता है कि यह एक कमांड लाइन उपकरण नहीं है लेकिन आप आसानी से http://browsershots.org/ का उपयोग करने के लिए कुछ स्क्रिप्ट कर सकते हैं जो बाहरी आईपी पर होस्ट नहीं किए गए अनुप्रयोगों के लिए उपयोगी नहीं है।

एक महान उपकरण कोई भी कम नहीं।

+0

असल में मुझे लगता है कि मैं ब्राउजरशॉट्स.org (क्योंकि यह एक कंपनी के लिए है) के माध्यम से सामान जमा करने के बजाय अपने स्वयं के स्थानीय संस्करण को लिखने के लिए इस परियोजना से कोड का उपयोग कर सकता हूं। – ujh

1

मैं कस्टम निर्मित कुछ भी पता नहीं है, मुझे यकीन है कि वहाँ छिपकली इंजन स्क्रीन के बजाय एक PNG फ़ाइल के लिए प्रस्तुत करने के लिए के साथ किया कुछ हो सकता है हूँ ...

या, आप ऊपर आग सकता है एक समर्पित वीएनसी सर्वर उदाहरण में पूर्ण स्क्रीन मोड में फ़ायरफ़ॉक्स और स्क्रीनशॉट लेने के लिए एक स्क्रीनशॉट हथियार का उपयोग करें। फुलस्क्रीन = न्यूनतम क्रोम, वीएनसी सर्वर इंस्टेंस = कोई दृश्य यूआई + आप अपना रिज़ॉल्यूशन चुन सकते हैं।

एक्सवीएनसी के साथ xinit का उपयोग एक्स सर्वर के रूप में करने के लिए करें - आपको सभी मैनपेज पढ़ने की आवश्यकता होगी।

Downsides हैं कि स्क्रीनशॉट हमेशा एक ही आकार है, वेब पेज के अनुसार आकार परिवर्तन नहीं करता है ...

1

आयात आदेश नहीं है, लेकिन आप एक्स की आवश्यकता होगी, और एक छोटे से बैश स्क्रिप्ट जो ब्राउज़र विंडो खोलती है, फिर स्क्रीनशॉट लें और ब्राउज़र बंद करें।

आप अधिक जानकारी के here, या सिर्फ एक खोल में आयात --help टाइपिंग पा सकते हैं;)

5

scrot स्क्रीनशॉट लेने के लिए एक कमांड लाइन उपकरण है। man page और यह tutorial देखें।

आप ब्राउज़र को स्क्रिप्टिंग करना भी चाहेंगे। फ़ायरफ़ॉक्स ऐड-ऑन हैं जो screengrab जैसे स्क्रीनशॉट लेते हैं (जो आप चाहते हैं कि पूरे पृष्ठ को कैप्चर कर सकते हैं, केवल दृश्यमान बिट नहीं) और फिर स्क्रीनशॉट लेने के लिए आप ब्राउज़र को greasemonkey के साथ स्क्रिप्ट कर सकते हैं।

+0

स्क्रॉट के लिए कार्य लिंक: http://freshmeat.net/projects/स्क्रॉट/ –

+0

@ कंप्यूटर गुरु - सही लिंक, धन्यवाद –

1

http://khtml2png.sourceforge.net/

देब फ़ाइल

libkonq4 स्थापित करने के बाद मेरी Ubuntu पर काम किया है ... लेकिन आप अन्य निर्भरता को कवर करने के लिए हो सकता है।

मुझे लगता है कि जावास्क्रिप्ट समर्थन अब बेहतर हो सकता है!

स्टीफ़न

1

नहीं कमांड लाइन के लिए लेकिन कम से कम यूआरएल आप अपने ऐड-ऑन FireShot साथ फ़ायरफ़ॉक्स का उपयोग कर सकते का एक बड़ा सेट के लिए बैच ऑपरेशन में उपयोग के लिए (लाइसेंस संस्करण?)।

  1. अपने सेट में सभी यूआरएल के लिए खुले टैब (उदा। "इस फ़ोल्डर में सभी बुकमार्क के लिए खुले टैब ...")।
  2. फिर FireShot लांच में "कैप्चर सभी टैब"
  3. संपादन विंडो में फिर "सभी दृश्यों का चयन -> सभी दृश्यों को बचाने के" कॉल

सेट करने के बाद स्क्रीनशॉट गुण (आकार, fileformat, आदि) शॉटफाइल के एक अच्छे सेट के साथ खत्म होने से पहले।

स्टीफन

37

अच्छा छोटे उपकरण CutyCapt है, जो केवल क्यूटी और QtWebKit पर निर्भर करता है की कोशिश करो। ;)

+5

स्वीकार्य उत्तर से काफी बेहतर है। – exic

+1

क्यूटी कैप्टन एक शानदार उपकरण है, लेकिन मैंने @ फ़ॉन्ट-फेस फ़ॉन्ट्स का उपयोग किया, और वे सही तरीके से प्रदर्शित नहीं हुए। – MarcDefiant

+0

दुर्भाग्यवश यह निकास कोड के रूप में डाउनलोड के परिणाम की रिपोर्ट नहीं करता है। – Grzegorz

3

Webkit2png देखें।

मुझे लगता है कि मैंने अतीत में उपयोग किया था।

संपादित करें मुझे पता चलता है कि मैंने उपर्युक्त उपयोग नहीं किया है, लेकिन this page कई अलग-अलग कार्यक्रमों और तकनीकों की समीक्षा के साथ मिला।

7

PhantomJS पर एक नज़र डालें, जो कि एक नि: शुल्क स्क्रिटेबल वेबकिट इंजन है जो लिनक्स, ओएसएक्स और विंडोज पर चलता है। मैंने इसका उपयोग नहीं किया है क्योंकि हम वर्तमान में Browshot (वाणिज्यिक समाधान) का उपयोग करते हैं, लेकिन जब हमारे सभी क्रेडिट समाप्त हो जाते हैं, तो हम गंभीरता से इसमें लूट लेंगे (क्योंकि यह मुफ़्त है और हमारे सर्वर पर चलाया जा सकता है)

+0

मैंने अपने होस्टमस्टर खाते पर यह (phantomjs) की कोशिश की, "यदि यह यहां काम करता है तो यह कहीं भी काम कर सकता है" पर्यावरण। 1. टैरबॉल 2 डाउनलोड करें।अनार टैरबॉल 3. बिन निर्देशिका पर जाएं 4. अपने त्वरित प्रारंभ पृष्ठ से हैलो वर्ल्ड उदाहरण काट और पेस्ट करें। 5. नरक दुनिया चलाएं – godzilla

+0

(अंतिम पोस्ट से cont) 6. कुछ मिनट प्रतीक्षा करें (मैंने सोचा कि यह लॉक हो गया है लेकिन यह पहली बार थोड़ी देर के लिए लिया गया था)। 6 नमस्तेवर्ल्ड.जेएसएस के नीचे दिए गए उदाहरण को काटकर पिछला करें 7. उस साइट पर example.com बदलें जिसे आप स्क्रीनशॉट चाहते हैं। 8. उदाहरण के लिए मैंने जो 5 मिनट लिया, वह वेबकिट 2 पीएनजी काम करने के लिए ट्रिंग की तुलना में बहुत कम दर्द था, थेंक्स मैक्सीहेट 2 अलग पोस्ट के लिए खेद है, टाइमर रन आउट – godzilla

संबंधित मुद्दे