我想从巴西政府那里搜刮一个网站。(http://www.tesouro.gov.br/resultados-dos-leiloes)
我想得到的信息只是下表,其中包含“Comunicados”、“Resultados da Semana”和以下链接。你知道吗
我的问题是,这个网站的行为不同于所有我一直在工作。你知道吗
通常情况下,信息都在elements部分,所以我可以通过请求直接获取,或者,在更复杂的站点中,我应该从Chrome Inspect中查找网络上的API和XHR部分。你知道吗
在这种情况下,这些对我都不起作用。你知道吗
有人知道我怎么弄到这张桌子吗?我想可能很简单(希望如此!哈哈)
我不认为这会有帮助,因为我的代码根本不起作用,但下面是我的代码:
import requests
from bs4 import BeautifulSoup as bs
url = "http://www.tesouro.gov.br/resultados-dos-leiloes"
data = requests.get(url)
bsobj = bs(data.content, "lxml") #just a small part of the site is shown.
ps:MacOS High Sierra/Python3.6-在Jupyter实验室工作
这个表可能加载了JavaScript,这就是为什么请求不能工作的原因。 您需要使用Selenium之类的工具来提取信息:
示例:
附言。 您还可以使用无头浏览器驱动程序,如phantomJS
在查看了这个站点的html之后,我看到他们正在使用iFrame加载这些数据,这意味着selenium将无法工作,除非您提供iFrame源url。你知道吗
所以您只需要iframe源url,您也可以通过请求获取数据
相关问题 更多 >
编程相关推荐