可能重复:
Extracting text from HTML file using Python
Parsing Source Code (Python) Approach: Beautiful Soup, lxml, html5lib difference?从HTML标记中提取文本?
目前有大量网页的源代码〜20万线的几乎所有的(如果不是全部)HTML。更具体地说,它是一个网页,其内容是通过换行符分隔的几千个文本块(虽然换行并不特别意味着内容有分隔)
我的主要目标是从源文本中提取文本代码就好像我在将网页复制/粘贴到文本编辑器中一样。还有另一个我想用的解析函数,它最初采用复制/粘贴文本而不是源代码。
为此,我正在使用urllib2,并在Beautiful Soup中调用.get_text()。问题是,Beautiful Soup在我的代码中留下了大量的空白空间,并且很难将结果传递给第二个“文本”解析器。我已经做了很多关于解析HTML的研究,但坦率地说我不知道如何轻松解决这个问题。此外,我对如何使用像lxml这样的导入来提取文本感到困惑。
tl;博士:是否有任何可能的方式来实现结果,就像我在网页上选择全部,复制,粘贴一样?
为了清楚起见,HTML不是源代码。这是标记。 –
如果你有一个解决方案,但唯一的问题是有太多的空白空间,你不能只删除额外的空白空间?试试're.sub(r“\ s +”,“”,text)'。 –
- 大卫感谢您的更正! @GregHewgill这将删除原始网页中存在的节距否?另一个解析函数在函数中使用这些空白作为各种分隔符,所以我不想删除它们。 ): – zhuyxn