作为练习的一部分,我试图从网页上抓取数据,但网页的设置方式似乎让我的一些努力受挫。基本上,我认为网页加载我感兴趣的功能需要一段时间,因此,当我运行代码提取我想要的数据时,它失败了。这是网页:https://www.cbn.gov.ng/rates/ExchRateByCurrency.asp
我注意到,即使在检查源代码时,表部分也需要一段时间才能加载
这是我的密码:
from bs4 import BeautifulSoup as bs
from requests import get
html = get("https://www.cbn.gov.ng/rates/ExchRateByCurrency.asp").text
html = bs(html,"lxml")
html = html.find("div",id="ContentTextinner")
相比之下,网站本身,一旦完成加载,显然在部分中有很多内容:
在打开inspect视图重新加载网页时,我发现源代码本身直到一秒钟左右才完全加载。我想这可能就是为什么html.tbody
显示为空的原因,即使在完全加载的页面中,它充满了有价值的信息。我想听听如何解决这个问题的建议,好吗
您可以使用像
selenium
这样的库来实现这一点例如:
我想这就是你想要的:
您将以
JSON
的形式获取数据,并从中提取您需要的内容这是因为请求是动态发出的,以填充页面的主体,这就是为什么您无法从第一个页面中找到内容
您也可以使用此链接将其作为
CSV
文件下载,所有内容:CSV_File相关问题 更多 >
编程相关推荐