我想從這個website刮數據。下拉菜單填充進入基礎數據,所以我提出多交的請求是這樣的:點擊一個按鈕後刮數據
url = 'http://59.180.234.21:85/index.aspx'
with requests.Session() as session:
response = session.get(url)
soup = BeautifulSoup(response.content, "html5lib")
data = {
'ddlDistrict': '165',
'__VIEWSTATE': soup.find('input', {'name': '__VIEWSTATE'}).get('value', ''),
'__EVENTVALIDATION': soup.find('input', {'name': '__EVENTVALIDATION'}).get('value', ''),
}
response = session.post(url, data=data)
soup = BeautifulSoup(response.content, "html5lib")
data = {
'ddlDistrict': '165',
'ddlPS': '11',
'__VIEWSTATE': soup.find('input', {'name': '__VIEWSTATE'}).get('value', ''),
'__EVENTVALIDATION': soup.find('input', {'name': '__EVENTVALIDATION'}).get('value', ''),
}
response = session.post(url, data=data)
soup = BeautifulSoup(response.content, "html5lib")
data = {
'ddlDistrict': '165',
'ddlPS': '11',
'txtRegNo':'100',
'ddlYear': '2011',
'__VIEWSTATE': soup.find('input', {'name': '__VIEWSTATE'}).get('value', ''),
'__EVENTVALIDATION': soup.find('input', {'name': '__EVENTVALIDATION'}).get('value', ''),
}
response = session.post(url, data=data)
這個做最後一頁之後有一個按鈕,我可以點擊並查看報告中的HTML表格。我希望能夠模擬點擊按鈕並獲得我可以使用BS解析的響應。請讓我知道如何做到這一點。樣本輸入,區:「新德里DIST」,警察局:「Con.Place」,FirNo:「100」,年:「2011」將給你一個冷杉觀看。該按鈕具有以下代碼:
onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("DgRegist$ctl03$imgDelete", "", true, "", "", false, false))"
「我希望能夠模擬點擊按鈕,並得到響應(...)」 - 它看起來像['selenium'(HTTP任務://硒蟒蛇.readthedocs.io /)。當然,除非事先已經有了'url'。 –
可能重複[Python單擊按鈕與請求](https://stackoverflow.com/questions/38393314/python-click-button-with-requests) –