我的工作基本上是:
-进入本网站“https://aplicacoes.mds.gov.br/sagirmps/estrutura_fisica/preenchimento_municipio_cras_new1.php”
-填写2张表格(例如AC - Acre
和Bujari
)
-在生成的表的最后一列中单击“Dados Detalhados”(详细数据)(当您单击“Dados Detalhados”时,它将生成第二个表,其中的数据为每行1个月)
-通过点击“Visualizar Relat”访问第二个表生成的数据ó在每行的最后一列<;---这就是我要搜集的数据。但是它是一个动态的网站,我不能仅仅访问url2
(当你点击“Visualizar relat”时)来获取数据ó里约'网站返回到初始网址,但与表我想刮)。代码如下:
import requests
from bs4 import BeautifulSoup
import pandas as pd
url = 'http://aplicacoes.mds.gov.br/sagirmps/estrutura_fisica/preenchimento_municipio_cras_new1.php'
params ={
'uf_ibge': '12',
'nome_estado': 'AC - Acre'
'p_ibge': '1200138'
'nome_municipio': 'Bujari'
}
r = requests.post(url, params = params, verify = False)
soup = BeautifulSoup(r.text, "lxml")
tables = pd.read_html(r.text)
unidades = tables[1]
print(unidades)
url2 = 'http://aplicacoes.mds.gov.br/sagirmps/estrutura_fisica/rel_preenchidos_cras.php?&p_id_cras=12001301971'
params2 ={
'p_id_cras': '12001301971'
'mes_referencia': '2019-02-01'
}
r2 = requests.post(url2, json = params2, verify = False)
soup2 = BeautifulSoup(r2.text, 'lxml')
soup2
请注意,url2
是在“Dados Detalhados”中单击时生成的url,它的第二个字典是'p\u id\u cras'
params2
应该是用来抓取我所说的数据的dict。我在第二个post请求中尝试了命令params
、data
和json
,但都不起作用
url2
应该使用不带参数的GET
。然后你有一个带有链接的页面和表,链接有
href="javascript:"
而且
onclick='enviadados(12001301971,"2019-02-01")'
所以你有下一个请求的参数
最后一个请求使用带有参数
12001301971,2019-02-01
和url的POST
https://aplicacoes.mds.gov.br/sagirmps/estrutura_fisica/visualiza_preenchimento_cras.php'`
我的密码。我希望它能正常工作
相关问题 更多 >
编程相关推荐