Python 请求和 __doPostBack 函数

2024-01-14

我一整天都在为此苦苦挣扎。我需要从一个网站上抓取数据,该网站有一个按钮,您需要单击该按钮才能查看数据。按钮本身调用了 ASP.NET 网站使用的这个著名的 __dopostback() javascript 函数

<a id="ContentPlaceHolder1_lbCoach" class="btn btn-dark-blue" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$lbCoach','')"><i class="fa fa-eye"></i>&nbsp;Display HS Coach Info</a>

As this https://stackoverflow.com/a/5157699/3357517答案表明,我应该模仿发布请求的行为,并且应该取回数据,我通过以下方式做到了这一点:

VIEWSTATE = soup.find('input',{'id':'__VIEWSTATE'}).get('value')
EVENTVALIDATION = soup.find('input',{'id':'__EVENTVALIDATION'}).get('value')
headers = {'Cache-Control': 'no-cache',
       'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
       'Accept-Language': 'en-US,en;q=0.5',
       'X-Requested-With': 'XMLHttpRequest',
       'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',
       'Referer': contact_url,
       'X-MicrosoftAjax': 'Delta=true'}
payload = {"ctl00$ToolkitScriptManager2":"ctl00$ContentPlaceHolder1$updCoach|ctl00$ContentPlaceHolder1$lbCoach",
       "ToolkitScriptManager2_HiddenField":"",
       "ctl00$Header1$Menu1$txtSearchBox": "",
       "ctl00$Header1$Menu1$txtSearchBox2": "",
       "__EVENTTARGET":"ctl00$ContentPlaceHolder1$lbDisplayContact",
       "__EVENTARGUMENT":"",
       "__VIEWSTATE":VIEWSTATE,
       "__SCROLLPOSITIONX":"0",
       "__SCROLLPOSITIONY":"0",
       "__EVENTVALIDATION":EVENTVALIDATION,
       "__ASYNCPOST": "true",
       }
r = s.post(contact_url,headers = headers, data=payload)
page_content = r.content.decode()
soup = BeautifulSoup(page_content, "html.parser")

响应似乎很好,但我得到的并没有什么特别的:

b'1|#||4|40|updatePanel|ContentPlaceHolder1_Bio1_udpAdminMenu|\r\n                    \r\n                |0|hiddenField|__EVENTTARGET||0|hiddenField|__EVENTARGUMENT||16992|hiddenField|__VIEWSTATE|/wEPDwUJODA2MzQ5MzQxD2QWAmYPZBYCAgMPZBYKAgMPZBYEAgEPZBYGZg8PFgIeB1Zpc2libGVoZGQCAg8PFgIfAGdkFgQCBQ8PFgQeBFRleHQFEFdlbGNvbWUgQmVuemFtaW4fAGdkZAIHD2QWBAIBDw8WAh8BBQVTY291dGRkAgMPDxYCHwBoZGQCGw8PFgIfAGdkFgQCAQ8WAh4LXyFJdGVtQ291bnRmZAIDDw8WAh8AZ2QWBgIBDw8WBB8BBR9Zb3VyIGxhc3QgU2NvdXQgUGF5bWVudCBmYWlsZWQuHwBnZGQCAw8PFgQfAQVxPHA+SWYgeW91IGRvbid0IHJldHJ5IHlvdXIgbGFzdCBmYWlsZWQgU2NvdXQgcGF5bWVudCwgeW91IHdpbGwgcmlzayBsb3NpbmcgYWNjZXNzIHRvIHlvdXIgU2NvdXQgc3Vic2NyaXB0aW9uLjwvcD4fAGcWAh4Fc3R5bGUFFXdoaXRlLXNwYWNlOnByZS13cmFwO2QCCQ8PFgYeC05hdmlnYXRlVXJsBRt+L015UEcvQWNjb3VudC9CaWxsaW5nLmFzcHgfAQUKQ2xpY2sgaGVyZR8AZ2RkAgsPZBY4AhUPDxYCHwQFIn4vQXJ0aWNsZXMvVmlldy5hc3B4P2FydGljbGU9MTM0MzVkZAIXDw8WAh8EBSJ+L0FydGljbGVzL1ZpZXcuYXNweD9hcnRpY2xlPTEzNDczZGQCGQ8PFgIfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMjU3M2RkAh0PDxYCHwQFIn4vUmFua2luZ3MvVGVhbS9EZWZhdWx0LmFzcHg/Uj0yMDFkZAIfDw8WAh8EBSJ+L1JhbmtpbmdzL1RlYW0vRGVmYXVsdC5hc3B4P1I9MTk2ZGQCIQ8PFgIfBAUifi9SYW5raW5ncy9UZWFtL0RlZmF1bHQuYXNweD9SPTIwMGRkAiMPDxYCHwQFIn4vUmFua2luZ3MvVGVhbS9EZWZhdWx0LmFzcHg/Uj0xOTlkZAIlDw8WAh8EBSJ+L1JhbmtpbmdzL1RlYW0vRGVmYXVsdC5hc3B4P1I9MTk4ZGQCJw8PFgIfBAUifi9SYW5raW5ncy9UZWFtL0RlZmF1bHQuYXNweD9SPTE5N2RkAikPDxYCHwQFIn4vUmFua2luZ3MvVGVhbS9EZWZhdWx0LmFzcHg/Uj0xOTVkZAKVAQ8PFgQfBAUgfi9FdmVudHMvRGVmYXVsdC5hc3B4P2V2ZW50PTM2MjQfAQUOMjAxNiBQcmUtRHJhZnRkZAKXAQ8PFgQfBAUgfi9FdmVudHMvRGVmYXVsdC5hc3B4P2V2ZW50PTUwNTUfAQUaMjAxNyBKci4gTmF0aW9uYWwgU2hvd2Nhc2VkZAKZAQ8PFgQfBAUgfi9FdmVudHMvRGVmYXVsdC5hc3B4P2V2ZW50PTUwNTYfAQUWMjAxNyBOYXRpb25hbCBTaG93Y2FzZWRkAukBDw8WBB8EBSB+L0V2ZW50cy9EZWZhdWx0LmFzcHg/ZXZlbnQ9MzYyNB8BBQ4yMDE2IFByZS1EcmFmdGRkAusBDw8WBB8EBSB+L0V2ZW50cy9EZWZhdWx0LmFzcHg/ZXZlbnQ9NTA1NR8BBRoyMDE3IEpyLiBOYXRpb25hbCBTaG93Y2FzZWRkAu0BDw8WBB8EBSB+L0V2ZW50cy9EZWZhdWx0LmFzcHg/ZXZlbnQ9NTA1Nh8BBRYyMDE3IE5hdGlvbmFsIFNob3djYXNlZGQC8QEPDxYCHwQFIn4vQXJ0aWNsZXMvVmlldy5hc3B4P2FydGljbGU9MTM0MzVkZAL3AQ8PFgIfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMjU3M2RkAocCDw8WAh8EBSJ+L0FydGljbGVzL1ZpZXcuYXNweD9hcnRpY2xlPTEzNDczZGQC2wIPFgIfAgIKFhRmD2QWAgIBDw8WBB8BBSEyMDE3IERpdmlzaW9uIElJSSBDb2xsZWdlIFByZXZpZXcfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzUwMmRkAgEPZBYCAgEPDxYEHwEFF0NvbmZlcmVuY2UgUHJldmlldzogV0FDHwQFIn4vQXJ0aWNsZXMvVmlldy5hc3B4P2FydGljbGU9MTM0OTlkZAICD2QWAgIBDw8WBB8BBRdDb25mZXJlbmNlIFByZXZpZXc6IFdDQx8EBSJ+L0FydGljbGVzL1ZpZXcuYXNweD9hcnRpY2xlPTEzNDk4ZGQCAw9kFgICAQ8PFgQfAQUdTm8uIDIgUmFuZ2VycyBleWUgVGV4YXMgMi1mZXIfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzQ4OWRkAgQPZBYCAgEPDxYEHwEFHENvbmZlcmVuY2UgUHJldmlldzogQmlnIFdlc3QfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzQ5N2RkAgUPZBYCAgEPDxYEHwEFHENvbmZlcmVuY2UgUHJldmlldzogU3VuIEJlbHQfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzQ3OGRkAgYPZBYCAgEPDxYEHwEFIFBHIFBpdGNoIFNtYXJ0IGNvbXBsaWFudCBpbiAyMDE3HwQFIn4vQXJ0aWNsZXMvVmlldy5hc3B4P2FydGljbGU9MTM0ODhkZAIHD2QWAgIBDw8WBB8BBR9TdW4gYWx3YXlzIHNoaW5lcyBvbiBOby4gMyBNYXZzHwQFIn4vQXJ0aWNsZXMvVmlldy5hc3B4P2FydGljbGU9MTM0ODZkZAIID2QWAgIBDw8WBB8BBSFVcGRhdGVkIEhTIGNsYXNzIG9mIDIwMTcgcmFua2luZ3MfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzUwMWRkAgkPZBYCAgEPDxYEHwEFGUNvbmZlcmVuY2UgUHJldmlldzogU29Db24fBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzQ3N2RkAt8CDxYCHwICBRYKZg9kFgICAQ8PFgQfAQUgMjAxNyBUb3AgNTAgSnVuaW9yIENvbGxlZ2UgVGVhbXMfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzQ3M2RkAgEPZBYCAgEPDxYEHwEFIFRvcCAxNTAgSnVuaW9yIENvbGxlZ2UgUHJvc3BlY3RzHwQFIn4vQXJ0aWNsZXMvVmlldy5hc3B4P2FydGljbGU9MTM0ODNkZAICD2QWAgIBDw8WBB8BBSFTYW5jaGV6LCBQLlIuIG9uIHRvcCBvZiB0aGUgV29ybGQfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzQzOWRkAgMPZBYCAgEPDxYEHwEFHzIwMTcgTmF0aW9uYWwgSFMgUmFua2luZ3M6IDYtMTAfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzQ4NGRkAgQPZBYCAgEPDxYEHwEFG1dlc3QgTUxLIENoYW1wLiBBbGwtVG91cm5leR8EBSJ+L0FydGljbGVzL1ZpZXcuYXNweD9hcnRpY2xlPTEzNDY2ZGQC4wIPFgIfAgIFFgpmD2QWAgIBDw8WBB8BBR0yMDE3IFByZXNlYXNvbiBDb2xsZWdlIFRvcCAyNR8EBSJ+L0FydGljbGVzL1ZpZXcuYXNweD9hcnRpY2xlPTEzNDM1ZGQCAQ9kFgICAQ8PFgQfAQUhMjAxNyBEaXZpc2lvbiBJSSBCYXNlYmFsbCBQcmV2aWV3HwQFIn4vQXJ0aWNsZXMvVmlldy5hc3B4P2FydGljbGU9MTM0ODJkZAICD2QWAgIBDw8WBB8BBR0yMDE3IENvbGxlZ2UgQmFzZWJhbGwgUHJldmlldx8EBSJ+L0FydGljbGVzL1ZpZXcuYXNweD9hcnRpY2xlPTEzNDI3ZGQCAw9kFgICAQ8PFgQfAQUfQ29sbGVnZSBQcmVzZWFzb24gQWxsLUFtZXJpY2Fucx8EBSJ+L0FydGljbGVzL1ZpZXcuYXNweD9hcnRpY2xlPTEzNDM0ZGQCBA9kFgICAQ8PFgQfAQUaMjAxNyBOQUlBIEJhc2ViYWxsIFByZXZpZXcfBAUifi9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzQ2M2RkAo8DDw8WBB8EBSB+L0V2ZW50cy9EZWZhdWx0LmFzcHg/ZXZlbnQ9MzYyNB8BBQ4yMDE2IFByZS1EcmFmdGRkApEDDw8WBB8EBSB+L0V2ZW50cy9EZWZhdWx0LmFzcHg/ZXZlbnQ9NTA1NR8BBRoyMDE3IEpyLiBOYXRpb25hbCBTaG93Y2FzZWRkApMDDw8WBB8EBSB+L0V2ZW50cy9EZWZhdWx0LmFzcHg/ZXZlbnQ9NTA1Nh8BBRYyMDE3IE5hdGlvbmFsIFNob3djYXNlZGQClQMPFgIfAgIMFhhmD2QWAgIBDw8WBB8BBRMyMDE3IFdvcmxkIFNob3djYXNlHwQFIH4vZXZlbnRzL1Jvc3RlcnMuYXNweD9ldmVudD00NDAzZGQCAQ9kFgICAQ8PFgQfAQUfMjAxNyBXb3JsZCBVbmNvbW1pdHRlZCBTaG93Y2FzZR8EBSB+L2V2ZW50cy9Sb3N0ZXJzLmFzcHg/ZXZlbnQ9NDQwNGRkAgIPZBYCAgEPDxYEHwEFHTIwMTcgTmF0aW9uYWwgVW5kZXJjbGFzcyBFYXN0HwQFIH4vZXZlbnRzL1Jvc3RlcnMuYXNweD9ldmVudD00NDA1ZGQCAw9kFgICAQ8PFgQfAQUdMjAxNiBOYXRpb25hbCBVbmRlcmNsYXNzIE1haW4fBAUgfi9ldmVudHMvUm9zdGVycy5hc3B4P2V2ZW50PTQwMTBkZAIED2QWAgIBDw8WBB8BBRQyMDE2IFVuZGVyY2xhc3MgV2VzdB8EBSB+L2V2ZW50cy9Sb3N0ZXJzLmFzcHg/ZXZlbnQ9NDAwOGRkAgUPZBYCAgEPDxYEHwEFFTIwMTYgV2VzdCBVbmNvbW1pdHRlZB8EBSB+L2V2ZW50cy9Sb3N0ZXJzLmFzcHg/ZXZlbnQ9NDAwOWRkAgYPZBYCAgEPDxYEHwEFJDIwMTYgQ2FyaWJiZWFuIFRvcCBQcm9zcGVjdCBTaG93Y2FzZR8EBSB+L2V2ZW50cy9Sb3N0ZXJzLmFzcHg/ZXZlbnQ9NDAwN2RkAgcPZBYCAgEPDxYEHwEFIjIwMTYgQ2FyaWJiZWFuIFVuZGVyY2xhc3MgU2hvd2Nhc2UfBAUgfi9ldmVudHMvUm9zdGVycy5hc3B4P2V2ZW50PTQzODZkZAIID2QWAgIBDw8WBB8BBR4yMDE2IE5hdGlvbmFsIFVuZGVyY2xhc3MgU291dGgfBAUgfi9ldmVudHMvUm9zdGVycy5hc3B4P2V2ZW50PTQwMDVkZAIJD2QWAgIBDw8WBB8BBRYyMDE2IFNvdXRoIFVuY29tbWl0dGVkHwQFIH4vZXZlbnRzL1Jvc3RlcnMuYXNweD9ldmVudD00MDA2ZGQCCg9kFgICAQ8PFgQfAQUbMjAxNiBDYWxpZm9ybmlhIFVuY29tbWl0dGVkHwQFIH4vZXZlbnRzL1Jvc3RlcnMuYXNweD9ldmVudD00MDAzZGQCCw9kFgICAQ8PFgQfAQUaMjAxNiBDYWxpZm9ybmlhIFVuZGVyY2xhc3MfBAUgfi9ldmVudHMvUm9zdGVycy5hc3B4P2V2ZW50PTQwMDRkZAKXAw8WAh8CAgwWGGYPZBYCAgEPDxYEHwEFEzIwMTcgV29ybGQgU2hvd2Nhc2UfBAUyfi9ldmVudHMvU2hvd2Nhc2VzL1RvcFByb3NwZWN0TGlzdC5hc3B4P2V2ZW50PTQ0MDNkZAIBD2QWAgIBDw8WBB8BBR8yMDE3IFdvcmxkIFVuY29tbWl0dGVkIFNob3djYXNlHwQFMn4vZXZlbnRzL1Nob3djYXNlcy9Ub3BQcm9zcGVjdExpc3QuYXNweD9ldmVudD00NDA0ZGQCAg9kFgICAQ8PFgQfAQUdMjAxNyBOYXRpb25hbCBVbmRlcmNsYXNzIEVhc3QfBAUyfi9ldmVudHMvU2hvd2Nhc2VzL1RvcFByb3NwZWN0TGlzdC5hc3B4P2V2ZW50PTQ0MDVkZAIDD2QWAgIBDw8WBB8BBR0yMDE2IE5hdGlvbmFsIFVuZGVyY2xhc3MgTWFpbh8EBTJ+L2V2ZW50cy9TaG93Y2FzZXMvVG9wUHJvc3BlY3RMaXN0LmFzcHg/ZXZlbnQ9NDAxMGRkAgQPZBYCAgEPDxYEHwEFFDIwMTYgVW5kZXJjbGFzcyBXZXN0HwQFMn4vZXZlbnRzL1Nob3djYXNlcy9Ub3BQcm9zcGVjdExpc3QuYXNweD9ldmVudD00MDA4ZGQCBQ9kFgICAQ8PFgQfAQUVMjAxNiBXZXN0IFVuY29tbWl0dGVkHwQFMn4vZXZlbnRzL1Nob3djYXNlcy9Ub3BQcm9zcGVjdExpc3QuYXNweD9ldmVudD00MDA5ZGQCBg9kFgICAQ8PFgQfAQUkMjAxNiBDYXJpYmJlYW4gVG9wIFByb3NwZWN0IFNob3djYXNlHwQFMn4vZXZlbnRzL1Nob3djYXNlcy9Ub3BQcm9zcGVjdExpc3QuYXNweD9ldmVudD00MDA3ZGQCBw9kFgICAQ8PFgQfAQUiMjAxNiBDYXJpYmJlYW4gVW5kZXJjbGFzcyBTaG93Y2FzZR8EBTJ+L2V2ZW50cy9TaG93Y2FzZXMvVG9wUHJvc3BlY3RMaXN0LmFzcHg/ZXZlbnQ9NDM4NmRkAggPZBYCAgEPDxYEHwEFHjIwMTYgTmF0aW9uYWwgVW5kZXJjbGFzcyBTb3V0aB8EBTJ+L2V2ZW50cy9TaG93Y2FzZXMvVG9wUHJvc3BlY3RMaXN0LmFzcHg/ZXZlbnQ9NDAwNWRkAgkPZBYCAgEPDxYEHwEFFjIwMTYgU291dGggVW5jb21taXR0ZWQfBAUyfi9ldmVudHMvU2hvd2Nhc2VzL1RvcFByb3NwZWN0TGlzdC5hc3B4P2V2ZW50PTQwMDZkZAIKD2QWAgIBDw8WBB8BBRsyMDE2IENhbGlmb3JuaWEgVW5jb21taXR0ZWQfBAUyfi9ldmVudHMvU2hvd2Nhc2VzL1RvcFByb3NwZWN0TGlzdC5hc3B4P2V2ZW50PTQwMDNkZAILD2QWAgIBDw8WBB8BBRoyMDE2IENhbGlmb3JuaWEgVW5kZXJjbGFzcx8EBTJ+L2V2ZW50cy9TaG93Y2FzZXMvVG9wUHJvc3BlY3RMaXN0LmFzcHg/ZXZlbnQ9NDAwNGRkApkDDxYCHwICDBYYZg9kFgICAQ8PFgQfAQUpMjAxNyBQRyBTdXBlcjI1IDEyVSBGb3VyIENvcm5lcnMgUmVnaW9uYWwfBAU2fi9ldmVudHMvdG91cm5hbWVudHMvYWxsdG91cm5hbWVudHRlYW0uYXNweD9ldmVudD00NTA4ZGQCAQ9kFgICAQ8PFgQfAQUpMjAxNyBQRyBTdXBlcjI1IDEzVSBGb3VyIENvcm5lcnMgUmVnaW9uYWwfBAU2fi9ldmVudHMvdG91cm5hbWVudHMvYWxsdG91cm5hbWVudHRlYW0uYXNweD9ldmVudD00NTA5ZGQCAg9kFgICAQ8PFgQfAQUpMjAxNyBQRyBTdXBlcjI1IDE0VSBGb3VyIENvcm5lcnMgUmVnaW9uYWwfBAU2fi9ldmVudHMvdG91cm5hbWVudHMvYWxsdG91cm5hbWVudHRlYW0uYXNweD9ldmVudD00NTEwZGQCAw9kFgICAQ8PFgQfAQUpMjAxNyBQRyBTdXBlcjI1IDE1VSBGb3VyIENvcm5lcnMgUmVnaW9uYWwfBAU2fi9ldmVudHMvdG91cm5hbWVudHMvYWxsdG91cm5hbWVudHRlYW0uYXNweD9ldmVudD00NTExZGQCBA9kFgICAQ8PFgQfAQUpMjAxNyBQRyBTdXBlcjI1IDE2VSBGb3VyIENvcm5lcnMgUmVnaW9uYWwfBAU2fi9ldmVudHMvdG91cm5hbWVudHMvYWxsdG91cm5hbWVudHRlYW0uYXNweD9ldmVudD00NTEyZGQCBQ9kFgICAQ8PFgQfAQUcMjAxNyBQRyBXZXN0IE1MSyBDaGFtcCBGcmVzaB8EBTZ+L2V2ZW50cy90b3VybmFtZW50cy9hbGx0b3VybmFtZW50dGVhbS5hc3B4P2V2ZW50PTQ0MThkZAIGD2QWAgIBDw8WBB8BBRwyMDE3IFBHIFdlc3QgTUxLIENoYW1wIFVuZGVyHwQFNn4vZXZlbnRzL3RvdXJuYW1lbnRzL2FsbHRvdXJuYW1lbnR0ZWFtLmFzcHg/ZXZlbnQ9NDQxOWRkAgcPZBYCAgEPDxYEHwEFHDIwMTcgUEcgV2VzdCBNTEsgQ2hhbXAgVXBwZXIfBAU2fi9ldmVudHMvdG91cm5hbWVudHMvYWxsdG91cm5hbWVudHRlYW0uYXNweD9ldmVudD00NDIwZGQCCA9kFgICAQ8PFgQfAQUtMjAxNiBQRyBTdXBlcjI1IDEzVSBTb3V0aHdlc3QgU3VwZXIgUXVhbGlmaWVyHwQFNn4vZXZlbnRzL3RvdXJuYW1lbnRzL2FsbHRvdXJuYW1lbnR0ZWFtLmFzcHg/ZXZlbnQ9NDEwMmRkAgkPZBYCAgEPDxYEHwEFLTIwMTYgUEcgU3VwZXIyNSAxNFUgU291dGh3ZXN0IFN1cGVyIFF1YWxpZmllch8EBTZ+L2V2ZW50cy90b3VybmFtZW50cy9hbGx0b3VybmFtZW50dGVhbS5hc3B4P2V2ZW50PTQxMDNkZAIKD2QWAgIBDw8WBB8BBS0yMDE2IFBHIFN1cGVyMjUgMTVVIFNvdXRod2VzdCBTdXBlciBRdWFsaWZpZXIfBAU2fi9ldmVudHMvdG91cm5hbWVudHMvYWxsdG91cm5hbWVudHRlYW0uYXNweD9ldmVudD00MTA0ZGQCCw9kFgICAQ8PFgQfAQUtMjAxNiBQRyBTdXBlcjI1IDE2VSBTb3V0aHdlc3QgU3VwZXIgUXVhbGlmaWVyHwQFNn4vZXZlbnRzL3RvdXJuYW1lbnRzL2FsbHRvdXJuYW1lbnR0ZWFtLmFzcHg/ZXZlbnQ9NDEwNWRkAgUPZBYEAgEPDxYCHwBoZGQCAw8PFgIfAGdkZAIHD2QWBAIBD2QWAgICDw8WAh8AZ2QWOAIBDw8WAh8EBcEDbWFpbHRvOj9zdWJqZWN0PUNvb3BlciBTd2Fuc29uIFBlcmZlY3QgR2FtZSBCYXNlYmFsbCBQbGF5ZXIgUHJvZmlsZSZib2R5PSUwQSUwQVNlbmRlciBvZiB0aGlzIGVtYWlsIGhhcyByZWNvbW1lbmRlZCBhIHBsYXllciBwcm9maWxlIHRvIHlvdSB2aWEgcGVyZmVjdGdhbWUub3JnLiUwQSUwQUNvb3BlciBTd2Fuc29uICAgMjAxNyAgIEZvcnQgTXllcnMsIEZMJTBBJTBBQ2xpY2sgdG8gdmlldyBQZXJmZWN0IEdhbWUgcGxheWVyIHByb2ZpbGUgZm9yIENvb3BlciBTd2Fuc29uJTBBaHR0cDovL3d3dy5wZXJmZWN0Z2FtZS5vcmcvUGxheWVycy9QbGF5ZXJwcm9maWxlLmFzcHg/SUQ9MzQ2NTA5JTBBJTBBJTBBJTBBJTBBJTBBUGVyZmVjdCBHYW1lIFVTQSAtIFdvcmxkJ3MgTGFyZ2VzdCBCYXNlYmFsbCBTY291dGluZyBTZXJ2aWNlJTBBaHR0cDovL3d3dy5wZXJmZWN0Z2FtZS5vcmclMEElMEFkZAIFDw8WAh8BBQ5Db29wZXIgU3dhbnNvbmRkAgcPDxYCHghJbWFnZVVybAVkaHR0cDovLzMzMmI3MWRiODU1ODZjNjM4MjY5LTdiM2U2NDlhMjMwZTJiYTJjZmY5MTJkOGFmMTdlMGI1LnI0MS5jZjEucmFja2Nkbi5jb20vMzY0NS0xMi1XaGl0ZS01LmpwZ2RkAgkPZBYGAgEPDxYCHwEFBDIwMTdkZAIDDw8WAh8AZ2QWAgIBDw8WAh8BBQwxOCBhbmQgMSBtb3NkZAIFDw8WAh8AZ2QWBAIBDw8WAh8BBQQyMDE3ZGQCAw8PFgIfAQUMMTggYW5kIDUgbW9zZGQCCw8PFgIfAQUCU1NkZAINDw8WAh8BBQNSSFBkZAIPDw8WAh8BBQM2LTFkZAIRDw8WAh8BBQMxOTRkZAITDw8WAh8BBQNSL1JkZAIVDw8WAh8BBQpDYW50ZXJidXJ5ZGQCFw8PFgIfAQUSRm9ydCBNeWVycywgRkwgVVNBZGQCGQ8PFgIfAQUORHVsaW5zIERvZGdlcnNkZAIbDw8WAh8BZWRkAiMPDxYCHwBnZBYCAgEPFgIfAgICFgRmD2QWAgIBDw8WBB8EBSl+L2FsbF9hbWVyaWNhbnMvVW5kZXJjbGFzcy5hc3B4P1llYXI9MjAxNR8BBSYyMDE1IFVuZGVyY2xhc3MgSGlnaCBIb25vcmFibGUgTWVudGlvbmRkAgEPZBYCAgEPDxYEHwQFKX4vYWxsX2FtZXJpY2Fucy9VbmRlcmNs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Z2RkAgkPDxYGHwEFAk5BHwdoHwBnZGQCDQ8PFgIfAGdkZAIFD2QWAmYPZBYUAgEPDxYEHwEFHUNsaWNrIGJ1dHRvbiBiZWxvdyB0byBkaXNwbGF5HwdoZGQCBQ8PFgQfAQUCTkEfB2hkZAIJDw8WBB8BBR1DbGljayBidXR0b24gYmVsb3cgdG8gZGlzcGxheR8HaGRkAg0PDxYEHwEFHUNsaWNrIGJ1dHRvbiBiZWxvdyB0byBkaXNwbGF5HwdoZGQCEQ8PFgQfAQUdQ2xpY2sgYnV0dG9uIGJlbG93IHRvIGRpc3BsYXkfB2hkZAIVDw8WBB8BBR1DbGljayBidXR0b24gYmVsb3cgdG8gZGlzcGxheR8HaGRkAhkPDxYEHwEFHUNsaWNrIGJ1dHRvbiBiZWxvdyB0byBkaXNwbGF5HwdoZGQCHQ8PFgQfAQUCTkEfB2hkZAIhDw8WBB8BBQJOQR8HaGRkAiUPDxYCHwBnZGQCCw9kFgICAQ8WAh8CAhEWImYPZBYCAgEPDxYCHwEFdjxhIGhyZWY9Imh0dHA6Ly93d3cucGVyZmVjdGdhbWUub3JnL2V2ZW50cy9kZWZhdWx0LmFzcHg/ZXZlbnQ9NDExNCIgdGFyZ2V0PSJfc2VsZiI+MTR1IFBHIFNlbGVjdCBCYXNlYmFsbCBGZXN0aXZhbDwvYT5kZAIBD2QWAgIBDw8WAh8BBXw8YSBocmVmPSJodHRwOi8vd3d3LnBlcmZlY3RnYW1lLm9yZy9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMzQyNyIgdGFyZ2V0PSJfc2VsZiI+MjAxNyBDb2xsZWdlIEJhc2ViYWxsIFByZXZpZXcgSW5kZXg8L2E+ZGQCAg9kFgICAQ8PFgIfAQWFATxhIGhyZWY9Imh0dHA6Ly93d3cucGVyZmVjdGdhbWUub3JnL0FydGljbGVzL1ZpZXcuYXNweD9hcnRpY2xlPTEzNDY1IiB0YXJnZXQ9Il9zZWxmIj4yMDE3IEhpZ2ggU2Nob29sIEJhc2ViYWxsIFByZXZpZXcmbmJzcDtJbmRleDwvYT5kZAIDD2QWAgIBDw8WAh8BBVw8YSBocmVmPSJodHRwOi8vd3d3LnBlcmZlY3RnYW1lLm9yZy9UZXN0aW1vbmlhbHMuYXNweCIgdGFyZ2V0PSJfc2VsZiI+VGVzdGltb25pYWxzPC9hPjxiciAvPmRkAgQPZBYCAgEPDxYCHwEFYjxhIGhyZWY9Imh0dHA6Ly93d3cucGVyZmVjdGdhbWUub3JnL2FsbGFtZXJpY2FuLyIgdGFyZ2V0PSJfc2VsZiI+UEcgQWxsLUFtZXJpY2FuIENsYXNzaWM8L2E+PGJyIC8+ZGQCBQ9kFgICAQ8PFgIfAQWHATxhIGhyZWY9Imh0dHA6Ly93d3cucGVyZmVjdGdhbWUub3JnL3JlcXVlc3RpbnZpdGUvRGVmYXVsdC5hc3B4P2lkPTI5NDEiIHRhcmdldD0iX3NlbGYiPktub3cgYSBwcm9zcGVjdD8gTWFrZSBhIHJlY29tbWVuZGF0aW9uPC9hPjxiciAvPmRkAgYPZBYCAgEPDxYCHwEFfzxhIGhyZWY9Imh0dHBzOi8vd3d3LnBlcmZlY3RnYW1lLm9yZy9SYW5raW5ncy9VbmNvbW1pdHRlZFByb3NwZWN0cy5hc3B4IiB0YXJnZXQ9Il9zZWxmIj5Ub3AgVW5jb21taXR0ZWQgUHJvc3BlY3QgTGlzdDwvYT48YnIgLz5kZAIHD2QWAgIBDw8WAh8BBVw8YSBocmVmPSJodHRwOi8vd3d3LnBlcmZlY3RnYW1lLm9yZy9QR1Nlcmllcy9QR1Nlcmllc0hvbWUuYXNweCIgdGFyZ2V0PSJfc2VsZiI+UEcgU2VyaWVzPC9hPmRkAggPZBYCAgEPDxYCHwEFowE8YSBocmVmPSJodHRwOi8vd3d3LnBlcmZlY3RnYW1lLm9yZy9BcnRpY2xlcy9WaWV3LmFzcHg/YXJ0aWNsZT0xMjQ1NSIgdGFyZ2V0PSJfc2VsZiI+VG91cm5hbWVudHMsIHBhcnRpY2lwYW50cyB0byBzdXBwb3J0IFN0LiBKdWRlIENoaWxkcmVuJ3MgUmVzZWFyY2ggSG9zcGl0YWw8L2E+ZGQCCQ9kFgICAQ8PFgIfAQV9PGEgaHJlZj0iaHR0cDovL3d3dy5wZXJmZWN0Z2FtZS5vcmcvQXJ0aWNsZXMvVmlldy5hc3B4P2FydGljbGU9MTMwMDYiIHRhcmdldD0iX3NlbGYiPlN1bW1lciBDb2xsZWdpYXRlIFRvcCBQcm9zcGVjdCBJbmRleDwvYT5kZAIKD2QWAgIBDw8WAh8BBaEBPGEgaHJlZj0iaHR0cDovL3d3dy5wZXJmZWN0Z2FtZS5vcmcvQXJ0aWNsZXMvVmlldy5hc3B4P2FydGljbGU9MTMzNDEiIHRhcmdldD0iX3NlbGYiPk1MQiBSb3VuZHRyaXAgd2l0aCBQZXJmZWN0IEdhbWUgb24gTUxCIE5ldHdvcmsgUmFkaW8gLSBTdW5kYXlzIDUtNyBQTSBFVDwvYT5kZAILD2QWAgIBDw8WAh8BBWM8YSBocmVmPSJodHRwOi8vd3d3Lmxha2Vwb2ludHNwb3J0cy5jb20vcGVyZmVjdC1nYW1lLWJhc2ViYWxsLyIgdGFyZ2V0PSJfYmxhbmsiPkxha2VQb2ludDwvYT48YnIgLz5kZAIMD2QWAgIBDw8WAh8BBVw8YSBocmVmPSJodHRwOi8vd3d3LnBlcmZlY3RnYW1lLm9yZy9wZXJmZWN0Z2FtZXN1cGVyMjUvIiB0YXJnZXQ9Il9zZWxmIj5QRyBTdXBlcjI1PC9hPjxiciAvPmRkAg0PZBYCAgEPDxYCHwEFVzxhIGhyZWY9Imh0dHA6Ly93d3cucGVyZmVjdGdhbWUub3JnL1NwcmluZ1N3aW5nLyIgdGFyZ2V0PSJfc2VsZiI+U3ByaW5nIFN3aW5nPC9hPjxiciAvPmRkAg4PZBYCAgEPDxYCHwEFejxhIGhyZWY9Imh0dHA6Ly93d3cucGVyZmVjdGdhbWUub3JnL2NvbGxlZ2UvZGVmYXVsdC5hc3B4IiB0YXJnZXQ9Il9zZWxmIj5QZXJmZWN0IEdhbWUgQ29sbGVnaWF0ZSBCYXNlYmFsbCBMZWFndWU8L2E+PGJyIC8+ZGQCDw9kFgICAQ8PFgIfAQWHATxhIGhyZWY9Imh0dHA6Ly93d3cucGVyZmVjdGdhbWUub3JnL0FydGljbGVzL1ZpZXcuYXNweD9hcnRpY2xlPTEzMzYxIiB0YXJnZXQ9Il9zZWxmIj4yMDE3IFBHIE5hdCdsIEluZG9vciBMZWFndWUgRmFjaWxpdHkgU3BvdGxpZ2h0PC9hPmRkAhAPZBYCAgEPDxYCHwEFRjxhIGhyZWY9Imh0dHA6Ly93d3cudW1wbmF0aW9uLmNvbS8iIHRhcmdldD0iX3NlbGYiPlVtcE5hdGlvbjwvYT48YnIgLz5kZAIRD2QWBGYPZBYCZg8PFgIfBQV3aHR0cHM6Ly8xNGU4NjA4NDYzMmYzMzQ4MmM4MS0xN2QxOTY2MWM1OTIwOGZkMDIzOGNjZjU1MTQwMGQ5MS5zc2wuY2YxLnJhY2tjZG4uY29tL1dlYlBhcnRzLzIwMTdwZ3BpdGNoc21hcnQtMzAweDExNC5qcGdkZAIEDw8WAh8AZ2RkZL27lGRFhJzDWDpM3YE55naBGllj|1|hiddenField|__SCROLLPOSITIONX|0|1|hiddenField|__SCROLLPOSITIONY|0|292|hiddenField|__EVENTVALIDATION|/wEdAAxsD18kXuyPL5ofgcnYES9y+7zziCikaDB50o6O1pxxXbDWcw39S27yDoDwzfIvSl/82S52cVbB2NeFUXKE4Mx+O+TegoiNwQAdWnT22jPmzI4v73G0IN877PxHm4GlN3cV9hFWoAb20O4Q+9Ls96AskeglIWLjtf4N+HDDRWBUXzFl5Dm8D+CLbHmC0vzJAV2dMNOfX5+XKgQp7nrLXr1R1UFtN09quhqZEMqLAngnkseO4VALrQwmvGPQfIrd43K9AvIrswshyn58y8V7WKC8hka6Yg==|0|asyncPostBackControlIDs|||0|postBackControlIDs|||285|updatePanelIDs||tctl00$ContentPlaceHolder1$Bio1$udpAdminMenu,ContentPlaceHolder1_Bio1_udpAdminMenu,tctl00$ContentPlaceHolder1$udpAddress,ContentPlaceHolder1_udpAddress,tctl00$ContentPlaceHolder1$updCoach,ContentPlaceHolder1_updCoach,tctl00$ContentPlaceHolder1$updDetails,ContentPlaceHolder1_updDetails|0|childUpdatePanelIDs|||81|panelsToRefreshIDs||ctl00$ContentPlaceHolder1$Bio1$udpAdminMenu,ContentPlaceHolder1_Bio1_udpAdminMenu|2|asyncPostBackTimeout||90|48|formAction||./PlayerProfile_ContactInfo.aspx?ID=J34665D097ED|'

当我使用 Fiddler 时,请求和响应,单击实际按钮后的请求和响应和代码中的请求和响应似乎是相同的。

请求数据

响应数据

最有趣的部分,同样的请求,通过 Chrome 开发工具查看正常渲染并代替\r\n \r\n从之前的响应中,现在您可以看到整个 html,以及所有附加数据

有没有可能,我实际上正在获取数据,但不知道如何呈现它?


要抓取这种类型的网页,您必须按F12键,然后转到“网络”选项卡,最后单击其中一个页面来更改您的页面,您可以看到所有请求。

可能第一个请求是更改页面。

点击它。 您必须从页面中获取所有可用字段,并将它们与 Python 请求一起提交以更改页面。

我执行了下面照片的步骤

Python代码:

import requests,re
firstPage = requests.get('https://Site/Your-Page').text
soup = BeautifulSoup(firstPage,'html.parser')
VIEWSTATEGENERATOR  = soup.find('input',{'id':'__VIEWSTATEGENERATOR'}).get('value')
VIEWSTATE  = soup.find('input',{'id':'__VIEWSTATE'}).get('value')
for page in range(1,5):  ### I read pages one to four ###
    data = {
        "__EVENTTARGET": "rptPager$ctl0{}$lnkPage".format(page),
        "__EVENTARGUMENT": "",
        "__LASTFOCUS": "",
        "__VIEWSTATE":VIEWSTATE,
        "ddlPageSize": 24,
        "__VIEWSTATEGENERATOR": VIEWSTATEGENERATOR
    }
    res = requests.post('https://Site/Your-Page',data=data).content.decode('utf8')
    print(res)

此代码只能获取前几页,如果需要其他页面,则必须在 Python 请求中添加另一个参数



___________________________________________
if parameter = 1
page number:    01 02 03 04 05 06 07 08 09
                 ↑  ↑  ↑  ↑  ↑  ↑  ↑  ↑  ↑  "refers to"
pagination: prev 1  2  3  4  5  6  7  8  9 next
-------------------------------------------
if parameter = 2
page number:    10 11 12 13 14 15 16 17 18
                 ↑  ↑  ↑  ↑  ↑  ↑  ↑  ↑  ↑ 
pagination: prev 1  2  3  4  5  6  7  8  9 next
-------------------------------------------
if parameter = 3
page number:    19 20 21 22 23 24 25 26 27
                 ↑  ↑  ↑  ↑  ↑  ↑  ↑  ↑  ↑ 
pagination: prev 1  2  3  4  5  6  7  8  9 next
___________________________________________
  

上述参数可能位于“__VIEWSTATE”内部或...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 请求和 __doPostBack 函数 的相关文章

随机推荐