我偶爾會收到一個Word文檔,我必須將其顯示爲網頁。我目前正在使用Django的flatpages通過抓取由MS Word生成的html內容來實現此目的。生成的html非常混亂。有沒有更好的方法,可以生成非常簡單的HTML來解決這個問題,使用Python?如何將Word文檔轉換爲Python中非常簡單的html?
回答
一個好的解決方案包括上傳到Google文檔並從中導出html版本。 (必須有一個API?)
它做了很多「清理」;在適當的情況下,路線上的Beautiful Soup可用於做出任何進一步的更改。它是這個星球上最強大和最優雅的html解析庫。
這是記者公司已知的標準。
這取決於你處理的格式和圖像的數量。我做的幾件事情之一:
- 谷歌文檔:可能是最接近你會得到原來的格式和可用的HTML。
- Markdown:放棄格式化。將其粘貼到純文本編輯器中,通過Markdown運行並手動修復其餘部分。
如何從Google Doc中獲取HTML?它是下載爲HTML選項嗎? – 2009-10-20 20:44:11
+1:Word Doc文件非常難以使用。許多工具將轉換它們,包括Open Office。 Google Docs有一個簡單的API,因爲它是一個HTTP Web服務。 – 2009-10-20 21:21:02
MS Word - > HTML只是簡單的邪惡。我有一個客戶遞給我一個包含數百個「需要看的地方」的95(!)頁面文字文檔,並且說:「應該很容易將其輸入到數據庫中。」 Arrggghh!我做了這件事,並以100美元/小時的價格收取了特權,但我認爲由於痛苦的原因,我的收入不足。 HTML是我所不得不與之合作的最糟糕的東西。 – 2009-10-21 00:14:35
您還可以使用Abiword/wvWare到Word文檔轉換爲XHTML,然後用BeautifulSoup/ElementTree的/ etc解析它。如果您需要預處理它。根據我的經驗,Abiword在轉換Word文件和生成相對乾淨的XHTML文件方面做得很好。
我應該提到Abiword可以在命令行上運行,因此很容易將它集成到自動過程中。
我的超簡單應用程序WordOff有一個API用於清除Word導出的HTML文件。您可以重寫您的flatpages模型的保存方法,以便在第一次保存時通過API管理您的HTML。類似這樣的:
import urllib
import urllib2
def decruft(html):
data = urllib.urlencode({'html' : html})
req = urllib2.Request('http://wordoff.org/api/clean', data)
response = urllib2.urlopen(req)
return response.read()
def save(self, **kwargs):
if not self.pk: # only de-cruft when content is first added
self.content = decruft(self.content)
super(FlatPage, self).save(**kwargs)
WordOff在這種事情上非常整潔 – 2010-12-20 10:40:18
如果你想在本地使用wordoff,你可以下載模塊並使用它的「superClean」方法獲得相同的結果:https://raw.github.com/tomdyson/wordoff/ master/wordoff.py – 2012-08-03 12:55:23
嗨tomd,WordOff.org已過期 – fedmich 2013-08-22 02:16:43
Word 2010能夠「保存爲過濾的網頁」。這將消除Word插入的絕大多數HTML。
,我發現這個網頁:http://www.textfixer.com/html/convert-word-to-html.php
它轉換成一個格式化文本簡單 HTML標記,保留粗體,斜體,鏈接和段落,但不會增加對字體大小和麪孔標籤。正是我需要節省一些時間。
這真是太神奇了!完全按照我想要的那樣工作。 – Justin 2014-04-14 22:15:40
- 1. 將Word文檔轉換爲HTML格式
- 2. SharePoint 2007 Word文檔轉換非常慢
- 3. 將Word文檔轉換爲PDF - Python
- 4. 如何將MS Word 2003文檔轉換爲C#中的HTML?
- 5. 使用python-docx將HTML轉換爲Word文檔?
- 6. 在html中使用docx4j將html轉換爲word文檔
- 7. 在PHP中將Word文檔轉換爲可用的HTML
- 8. 將pdf文件轉換爲word文檔
- 9. 將word文檔轉換爲pdf的vbscript
- 10. 將Word文檔文本轉換爲HTML的庫
- 11. 如何將Markdown文檔轉換爲HTML?
- 12. 將word文檔轉換爲excel
- 13. 將Word文檔轉換爲tiff
- 14. 將Word文檔轉換爲ASPX?
- 15. 將word文檔轉換爲pdf
- 16. 將MS Word文檔轉換爲HTML的PHP
- 17. 將html轉換爲word c#
- 18. 如何將html中的canvas標籤轉換爲word文件?
- 19. ColdFusion - 將HTML網頁轉換爲Word或PDF文檔
- 20. 將數千個Word文檔轉換爲單個PCL文件
- 21. 使用Python自動將Excel數據轉換爲Word文檔
- 22. 如何將簡單的RichText轉換爲Delphi中的HTML標籤?
- 23. XSLT非常簡單的轉換需求
- 24. 如何使用vb.net將word文檔轉換爲pdf?
- 25. 如何使用Freemarker將XML Word文檔轉換爲DOC?
- 26. 如何將word文檔轉換爲swf查看器程序
- 27. 如何將XML Word文檔轉換爲DOCX?
- 28. 如何將文檔從Latex轉換爲Microsoft Word 2003?
- 29. .NET庫將MS Word文檔轉換爲XPS文檔
- 30. 如何將簡單列表轉換爲Python中的數據框
但是,您是如何從Google文檔執行該操作的?我上傳MSWord文檔並選擇轉換選項 - 它會丟失所有圖表 – likejiujitsu 2012-03-03 19:43:42