3 回答

TA貢獻(xiàn)1826條經(jīng)驗 獲得超6個贊
我分析了網(wǎng)站發(fā)出的請求,發(fā)現(xiàn)您可以通過一個請求獲取所有數(shù)據(jù),即 json 內(nèi)容:
import requests as r
from bs4 import BeautifulSoup
import json
url = "https://fnet.bmfbovespa.com.br/fnet/publico/abrirGerenciadorDocumentosCVM?cnpjFundo=11026627000138&idCategoriaDocumento=6&idTipoDocumento=45"
res = r.get("http://fnet.bmfbovespa.com.br/fnet/publico/pesquisarGerenciadorDocumentosDados?d=0&s=0&l=200&"+url.split("?")[1])
json_result = json.loads(res.text)
print(json_result)
注意:如果“recordsTotal”超過200,則需要再次請求,參數(shù)為“?d=0&s=200&l=200”,s代表start,l代表limit,始終保持200以一次抓取最大值要求。

TA貢獻(xiàn)1865條經(jīng)驗 獲得超7個贊
正如你所看到的,兩個按鈕之間的區(qū)別只是按鈕的數(shù)量
//*[@id="tblDocumentosEnviados_paginate"]/span/a[1]
//*[@id="tblDocumentosEnviados_paginate"]/span/a[2]
如果你想迭代它,你可以簡單地更改 xpath 中的數(shù)字
例如
for i in range(1, numberOfPages):
browser.find_element_by_xpath("//[@id="tblDocumentosEnviados_paginate"]/span/a["+str(i)+"]")
希望這能解決您想要做的事情

TA貢獻(xiàn)1779條經(jīng)驗 獲得超6個贊
正如你所看到的,兩個按鈕之間的區(qū)別只是按鈕的數(shù)量
//*[@id="tblDocumentosEnviados_paginate"]/span/a[1]
//*[@id="tblDocumentosEnviados_paginate"]/span/a[2]
如果你想迭代它,你可以簡單地更改 xpath 中的數(shù)字
例如
for i in range(1, numberOfPages):
browser.find_element_by_xpath("//[@id="tblDocumentosEnviados_paginate"]/span/a["+str(i)+"]")
希望這能解決您想要做的事情
添加回答
舉報