使用htmlparse替换html文件中的图像和css源URL(python)

时间:2011-09-16 14:55:37

标签: python html-parsing

我正在尝试编写一个可下载网页的脚本,包括所有图片和样式表 - 即本地托管版本看起来与原版相同。

最初我只是下载图像,但我现在意识到我必须(当然)编辑html源代码,以便img src实际指向本地托管的图像。因为我必须更改html源代码,所以我决定更新本地托管文件以指向远程托管的图像和样式表。

所以这让我想到了我的问题,我可以使用htmlparse搜索样式表和图片标签,然后用更新的版本替换它们的链接吗?

我已经看过htmlparse文档了,但我仍然是python的新手,所以有些部分不清楚。我认为可以使用:

HTMLParser.handle_data(data)
This method is called to process arbitrary data. It is intended to be overridden by a 
derived class; the base class implementation does nothing.

并添加我自己的替换类吗?或者我完全错了?

另一个选择当然是使用正则表达式来搜索标签并替换它们之后的文本,但这可能会非常复杂,所以我想知道htmlparse是否会提供更简单的解决方案。

我意识到美丽的汤将是理想的解决方案,但我将在我的公司周围分发完成的工具,所以我不能使用任何第三方模块。同样地,我希望该工具与平台无关,所以不幸的是不能使用wget。

感谢任何输入=)

1 个答案:

答案 0 :(得分:1)

如果您将Python程序打包成自包含的二进制文件(甚至不需要Python运行时),您可以使用任何模块到您的内容:http://www.pyinstaller.org/