0
我試圖使用requests
庫登錄到網站,並且它不像通常那樣工作。使用Python請求訪問時,網站沒有設置csrftoken cookie
我希望該網站能爲它發送的cookie通過瀏覽器訪問時:
csrftoken: Bl5DOVcUge5VeRv771nAIUNbxmm9Z9l2
然而,所有我收到如下:
__cfduid: d2f8e300a0b867e8a6147462f3977f8b11375815648197 for .example2.net/
這一個是工作,我預計:
agent1 = requests.session()
agent1.get('https://example1.com/')
print agent1.cookies
返回:
<<class 'requests.cookies.RequestsCookieJar'>[<Cookie example1session=6ce1fa7fc23669078c9cf86001b34c4f for .example1.com/>, <Cookie countrycode=FR for example1.com/>, <Cookie csrftoken=ETcsKwBgUkPxPjgN6hJaOXv5byIL15mE for example1.com/>, <Cookie lat=46.0 for example1.com/>, <Cookie lon=2.0 for example1.com/>]>
這一個不:
agent2 = requests.session()
agent2.get('https://www.example2.net')
print agent2.cookies
它返回:
<<class 'requests.cookies.RequestsCookieJar'>[<Cookie __cfduid=d14644e3e542bf4165a0714c0e77d04eb1375816707171 for .example2
這__cfduid
cookie是與現場運行背後的CloudFlare DDOS保護服務做。這可能與這個問題有關嗎?
我希望能夠測試和接受這個答案,但該網站早已改變其登錄方法。我會留下這個問題,因爲這個答案可能會幫助別人。 –