2012-09-06 14 views
9

Sphinx से आउटपुट, पायथन दस्तावेज़ जनरेटर, परिणामस्वरूप बड़ी संख्या में HTML फाइलें होती हैं। हर एक जावास्क्रिप्ट की एक बड़ी संख्या के साथ एक शीर्ष लेख है और सीएसएस में शामिल हैं:स्टेटिक एचटीएमएल फाइलों में जेएस और सीएसएस को संपीड़ित करना

<link rel="stylesheet" href="../_static/sphinxdoc.css" type="text/css" /> 
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> 
<script type="text/javascript" src="../_static/jquery.js"></script> 
<script type="text/javascript" src="../_static/underscore.js"></script> 
<script type="text/javascript" src="../_static/doctools.js"></script> 
<script type="text/javascript" src="../_static/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script> 
<link rel="stylesheet" type="text/css" href="../_static/custom.css" /> 
<link rel="stylesheet" type="text/css" href="../_static/colorbox/colorbox.css" /> 
<script type="text/javascript" src="../_static/colorbox/jquery.colorbox-min.js"></script> 

इनमें से अधिकांश अलग-अलग न्यूनतम किया जाता है, लेकिन यह अभी भी करने से इनकी है, क्योंकि यह वेब सर्वर पर अलग-अलग अनुरोध की आवश्यकता है जब ग्राहक का कैश खाली है। क्या यूयूआई कंप्रेसर या क्लोजर कंपाइलर जैसे टूल हैं जो एचटीएमएल फाइलों को इनपुट के रूप में ले जाएंगे, सभी बाहरी-लिंक्ड स्क्रिप्ट को संपीड़ित करेंगे, और फिर आउटपुट को फिर से लिखेंगे? यह django_compressor के समान होगा।

उत्तर

0

ऐसे दो घटक हैं जिन्हें आप पूछ रहे हैं - जो आपके संसाधनों को जोड़ता है और छोटा करता है, और दूसरा जो स्थिर संसाधनों का उपयोग करने के लिए स्थिर HTML फ़ाइलों को फिर से लिखता है।

पहले घटक के लिए, मेरा मानना ​​है कि आप this minify engine का उपयोग कर सकते हैं; यह गतिशील रूप से पृष्ठों की सेवा के लिए डिज़ाइन किया गया है लेकिन आप या तो सीधे कोड में हुक करने या आउटपुट को स्थिर फ़ाइलों में सहेजने के बारे में पता लगा सकते हैं (यूआरएल आपको कई फाइलें निर्दिष्ट करने की अनुमति देता है)।

दूसरा तत्व के लिए, यह XML के रूप में पेज पार्स करने के लिए भी मुश्किल नहीं होना चाहिए (यह मानते हुए इसकी वैधता की एक्सएचटीएमएल) और किसी भी <link> या <script> टैग मिल जाए, उन तत्वों के बिना दस्तावेज़ की एक प्रतिलिपि संग्रहीत करने, न्यूनतम किया गया संसाधन संकलन और <head> नोड बंद होने के बाद उन्हें जोड़ें, शेष फ़ाइल पढ़ें, और निर्मित एक्सएचटीएमएल दस्तावेज़ को स्टोर करें। यदि यह बहुत अधिक है, तो आप <link> और <script> टैग ढूंढने और बदलने के लिए नियमित अभिव्यक्ति का उपयोग करने में भी सक्षम हो सकते हैं; आम तौर पर नियमित अभिव्यक्ति एक्सएमएल को पूरी तरह से पार्स नहीं कर सकती हैं लेकिन उन टैग को ठीक होना चाहिए क्योंकि उन्हें घोंसला नहीं दिया जाएगा।

यदि आप जो कुछ भी चाहते हैं उसे एक साथ रखना चाहते हैं लेकिन शुरू करने में और मदद की ज़रूरत है, तो बस पूछें।

2

उपरोक्त उत्तर से सहमत हैं।

आप एक और चीज कर सकते हैं।

शीर्षलेख के बजाय शरीर के बाद सभी स्क्रिप्ट रखें। हो सकता है कि यह आपकी लोडिंग गति बढ़ाएगा।

1

आप Springboard आज़मा सकते हैं। मुझे लगता है कि यह आपकी आवश्यकताओं के लिए उपयुक्त होगा।

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