2013-01-24 34 views
7

जो लोग मेरी वेबसाइट पर सामग्री भेजते हैं, वे Word का उपयोग करते हैं, इसलिए मुझे HTML में कनवर्ट करने के लिए बहुत सारे वर्ड दस्तावेज़ मिलते हैं। मैं केवल मूल स्वरूपण - शीर्षक, सूचियों और जोर - कोई छवियों को संरक्षित करना चाहता हूं।एमएस वर्ड या लिबर ऑफिस से एचटीएमएल

जब मैं उन्हें "एचटीएमएल के रूप में सहेजें" के साथ लिबर ऑफिस के रूप में परिवर्तित करता हूं, परिणामी फाइलें बहुत बड़ी हैं, उदाहरण के लिए, 112 के की एक दस्तावेज़ फ़ाइल 450K एचटीएमएल बन जाती है, इसमें से अधिकांश बेकार फैन और स्पैन टैग (किसी कारण से, प्रत्येक एकल विराम चिह्न अपने स्वयं के काल में संलग्न है!)।

मैंने इस स्क्रिप्ट की कोशिश की: http://www.techrepublic.com/blog/opensource/how-to-convert-doc-and-odf-files-to-clean-and-lean-html/3708 साफ और sed के आधार पर, और आकार को लगभग 150K तक घटा दिया, लेकिन अभी भी कई बेकार स्पैन हैं।

मैंने कॉम्पोज़र में कॉपी और अतीत करने की कोशिश की - एक HTML संपादक, और फिर HTML के रूप में सहेजें; लेकिन यह मेरे सभी गैर-लैटिन (हिब्रू) अक्षरों को "ְ" जैसी इकाइयों में परिवर्तित कर दिया, जिसने आकार को 750K तक बढ़ा दिया!

मैं docvert की कोशिश की: https://github.com/holloway/docvert/issues/6 लेकिन पता चला कि यह जो निर्भरता की एक अंतहीन मार्ग की तरह लगता है एक अजगर पुस्तकालय है कि एक और पुस्तकालयों की आवश्यकता है, आदि, की आवश्यकता है ...

वहाँ स्वच्छ HTML बनाने के लिए एक आसान तरीका है कार्यालय दस्तावेजों से?

+0

यह शायद एक डुप्लिकेट है: http://stackoverflow.com/questions/67964/what-is-the-best-free-way-to-clean-up-word-html/1813798#1813798 –

उत्तर

0

आपकी स्थिति में, आपको अपने शब्द दस्तावेज़ के प्रमुख हिस्सों को परिवर्तित करने के लिए लाइन-दर-लाइन जाने की आवश्यकता हो सकती है, फिर वापस जाएं और कोई अतिरिक्त टैग साफ़ करें। आप इस दृष्टिकोण से परहेज नहीं करते हैं, तो एक वेब पेज के रूप में अपने शब्द दस्तावेज़ सहेजने के बाद इस समाधान पर विचार ...

  1. , नोटपैड में है कि एक ही वेब पेज खोलने ++।
  2. तब उस दस्तावेज़
  3. के लिए सुविधा की जगह के भीतर का उपयोग लगता है क्या बॉक्स, < में टाइप [^>]>
  4. खोज यह एक ही खिड़की के लिए मोड में, चुनें "नियमित अभिव्यक्ति"

अब आपको उस बिंदु से करना है, जब तक आप उन टैग्स तक नहीं पहुंच जाते हैं जिन्हें आप प्रतिस्थापित करना चाहते हैं और फिर प्रतिस्थापित करने की आवश्यकता वाले प्रत्येक टैग के लिए बदलें पर क्लिक करें। सुनिश्चित करें कि "इसके साथ बदलें:" बॉक्स खाली है।

मुझे नहीं पता कि कोई सुविधाजनक तरीका है या नहीं, लेकिन यह तरीका नोटपैड ++ के माध्यम से HTML टैग क्लीन-अप प्रोसेसिंग के लिए 100% नि: शुल्क और सरल है।

जहां तक ​​बाहरी सीएसएस (जो मैं अनावश्यक टैग की जगह के बाद दूसरी प्रक्रिया के रूप में सलाह देते हैं) के लिए इनलाइन शैलियों परिवर्तित http://inlinecssextractor.com/home.html

गुड लक

+0

नोटपैड ++ का उपयोग करना हालांकि, एक ही दस्तावेज़ के लिए समाधान बनें, चूंकि मेरे पास प्रत्येक सप्ताह आने वाले नए दस्तावेज़ हैं, इसलिए मैं प्रत्येक दस्तावेज़ के लिए बार-बार वही प्रतिस्थापन दोहराना नहीं चाहता हूं ... –

0

, इस एप्लिकेशन को कोशिश ... के रूप में मैंने पाया इन दो क्लीनर काफी प्रभावी है। सबसे पहले, मैं तो मैं कुछ नियमित अभिव्यक्ति का इस्तेमाल किया सूची (ली) के लिए कुछ बुलेटेड पैरा आइटम परिवर्तित करने के लिए

http://textism.com/wordcleaner/

के माध्यम से शब्द फ़िल्टर्ड एचटीएमएल भाग गया। तब मैं बिना क्रम वाली सूची (उल) टैग के साथ सूची आइटम लपेटो और अन्य त्रुटियों को साफ करने के

http://infohound.net/tidy/

के माध्यम से परिणाम भाग गया। मैं परिणाम से बहुत खुश था जो 1.5 एम से 225k तक चला गया।

0

मैं http://word2cleanhtml.com/ का उपयोग कर रहा था जब तक मुझे एहसास हुआ कि एमएस वर्ड स्वयं दस्तावेज़ को HTML के रूप में सहेजने का विकल्प देता है।

इसे चुनने पर, .docx फ़ाइल .html बन जाती है और मैंने जो शब्द दस्तावेज़ देखा है उसका सबसे अच्छा HTML संस्करण है। इन सभी ऑनलाइन उपकरणों की तुलना में यह निश्चित रूप से बेहतर है।

1

मुझे एहसास है कि यह प्रश्न पुराना है लेकिन अन्य उत्तरों ने कभी भी सवाल का जवाब नहीं दिया। आप कुछ PHP कोड लिखने के लिए प्रतिकूल नहीं हैं, तो CubicleSoft अंतिम वेब स्क्रैपर टूलकिट एक वर्ग TagFilter कहा जाता है:

https://github.com/cubiclesoft/ultimate-web-scraper/blob/master/support/tag_filter.php

आप दो चीजों में पारित: विकल्प और डेटा की एक सरणी HTML के रूप में पार्स करने के लिए।

टूटी हुई एचटीएमएल की सफाई के लिए, टैगफिल्टर :: GetHTMLOptions() से डिफ़ॉल्ट विकल्प एक अच्छे प्रारंभिक बिंदु के रूप में कार्य करेंगे। वे विकल्प वैध HTML सामग्री का आधार बनाते हैं और, कुछ भी नहीं कर रहे हैं, किसी भी इनपुट डेटा को किसी चीज़ में साफ कर देंगे कि सरल HTML DOM जैसे किसी अन्य टूल को DOM मॉडल में सही ढंग से पार्स कर सकते हैं।

हालांकि, कक्षा का उपयोग करने का दूसरा तरीका डिफ़ॉल्ट विकल्पों को संशोधित करना और विकल्प सरणी में 'कॉलबैक' विकल्प जोड़ना है। HTML में प्रत्येक टैग के लिए, निर्दिष्ट कॉलबैक फ़ंक्शन कॉल किया जाएगा। कॉलबैक से प्रत्येक टैग के साथ क्या करना है, यह लौटने की उम्मीद है, जहां टैगफिल्टर की असली शक्ति खेल में आती है। आप किसी दिए गए टैग और कुछ या उसके सभी गुण (या उन्हें संशोधित) रख सकते हैं, टैग से छुटकारा पाएं लेकिन आंतरिक सामग्री रखें, टैग रखें लेकिन सामग्री से छुटकारा पाएं, सामग्री को संशोधित करें (टैग बंद करने के लिए), या टैग और आंतरिक सामग्री दोनों से छुटकारा पाएं। यह दृष्टिकोण वहां पर सबसे अधिक नियंत्रित एचटीएमएल पर बेहद परिष्कृत नियंत्रण की अनुमति देता है और एक ही पास में इनपुट को संसाधित करता है। उदाहरण के लिए टैगफिल्टर के उपयोग के लिए एक ही भंडार का परीक्षण सूट देखें।

एकमात्र नकारात्मक बात यह है कि कॉलबैक को यह ट्रैक रखना होगा कि यह प्रत्येक कॉल के बीच कहां है, जबकि सरल HTML DOM जैसे कुछ DOM-like मॉडल के आधार पर चीजों का चयन करते हैं। लेकिन अगर दस्तावेज़ संसाधित हो रहा है तो इसमें केवल एक कमी है, जिसमें 'आईडी और' वर्ग 'जैसी चीजें हैं ... अधिकांश वर्ड/लिबर एचटीएमएल सामग्री नहीं है, जिसका अर्थ यह है कि यह डीओएम प्रोसेसिंग टूल्स तक अपरिचित/अचूक एचटीएमएल का विशाल ब्लॉब है चले जाओ।

0

यहां पावरशेल स्क्रिप्ट्स का एक सेट है जो वर्ड-फ़िल्टर किए गए HTML को साफ़ करेगा और समय के बारे में 9 5% सुपर/सबस्क्रिप्ट को सही ढंग से टैग करेगा। (नहीं, आप की तुलना में बेहतर नहीं मिल सकता है, वर्ड प्रिंट के लिए किया जाता है।)

https://github.com/suzumakes/replaceit

निर्देश रीडमी में देखते हैं और आप किसी भी अतिरिक्त वर्ण पकड़े जाने या आने जाने की जरूरत है कि सामना करने के लिए होगा अगर किसी भी बदलाव/सुधार के साथ, मुझे आपके पुल अनुरोध को देखकर खुशी होगी।

0

ophir.php .odt फ़ाइलों से क्लीन HTML बनाने में एक बहुत अच्छा काम करता है। इसे चलाने के लिए आपको एक PHP होस्टिंग वातावरण की आवश्यकता है।

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