使用python读取动态生成的web页面

2024-06-16 12:29:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图用python和beautiful soup创建一个web站点。我在一些网站上遇到过,图片链接虽然在浏览器上看到,但在源代码中是看不到的。但是在使用chromeinspect或Fiddler时,我们可以看到相应的代码。 我在源代码中看到的是:

<div id="cntnt"></div>

但是在Chrome Inspect上,我可以看到在这个div类中生成的一大堆HTML\CSS代码。有没有办法在python中加载生成的内容?我在python中使用的是常规的urllib,我能够获得源代码,但是没有生成的部分。

我不是一个web开发人员,因此我不能用更好的方式来表达这种行为。如果我的问题模糊不清,请随时澄清!


Tags: 代码divwebid源代码站点网站浏览器
3条回答

网站的内容可以在加载后通过javascript生成,以便通过python获取生成的脚本参见this answer

普通的scraper只获取HTML文档。要获取由JavaScript逻辑生成的任何内容,您更需要一个Headless browser,它还将生成DOM,像普通浏览器那样加载和运行脚本。维基百科的文章和网络上的其他一些页面都列出了这些内容及其功能。

在选择之前的主要产品时,请记住现在已经放弃了。

相关问题 更多 >