我正在编写一个数据scape,但是我不知道如何处理Python,等待我发出的加载请求。你知道吗
我正在从以下链接中提取一个表:http://www.ans.gov.br/perfil-do-setor/dados-e-indicadores-do-setor/sala-de-situacao
Go to Caderno 2.0 Select the first value at the droplist Run anything
这里最大的问题是:当我在网站上运行查询时,网站需要一段时间才能获得输出,所以我需要弄清楚如何让Python进入待机状态,直到结果出来(见下图)
有人能帮我吗?拜托。你知道吗
非常感谢!你知道吗
这个网站之所以要花这么长时间加载,是因为它使用了一些繁重的Javascript来呈现页面。你知道吗
可以使用Splash,它用于呈现基于Javascript的页面。您可以很容易地在Docker中运行Splash,只需向Splash容器发出HTTP请求,该容器将返回类似于web浏览器中呈现的网页的HTML。你知道吗
虽然这听起来过于复杂,但实际上设置起来非常简单,因为您根本不需要修改Docker映像,而且您不需要以前的Docker知识就可以让它工作。启动本地启动服务器只需要一行代码:
docker run -p 8050:8050 -p 5023:5023 scrapinghub/splash
默认超时为30秒,但如果需要等待更长时间才能呈现页面,可以指定其他超时作为参数。 例如,对于300秒的超时:
docker run -it -p 8050:8050 scrapinghub/splash max-timeout 300
然后,只需修改Python代码中的任何现有请求即可路由到splash:
即
http://example.com/
变成http://localhost:8050/render.html?url=http://example.com/
或者,您可以像上面的另一个用户所评论的那样使用Selenium,但是我个人使用Splash的时候比较容易。你知道吗
相关问题 更多 >
编程相关推荐