2017-08-10 40 views
2

我在Python上編寫客戶端和授權,我必須發送POST與登錄名,密碼和CSRF令牌(我使用請求)。Python3,如何在r.text中找到crtf tocken?

我可以看到r.text CSRF令牌,但我不知道如何找到這個字符串

<輸入類型=「隱藏」名稱=「csrf_token」值=「ImQyYzk5ZjVkY2U4NmI2Y2I5YTYxMGExMDdiOGRhNTZhNzllYzY5NDUi.DG35rw.dTzyTeP7giMkInma1vsty9GaKQA」 />

和複製CSRF tocken到可變csrftoken併發送這樣

r = requests.post(url,data=dict(login=123,password=123, csrf_token=csrftoken)) 

回答

1

使用BeautifulSoup

from bs4 import BeautifulSoup 
soup = BeautifulSoup(r.text) 
input_tag = soup.find("input", {"name":"csrf_token"}) 
csrf_token = input_tag.get("value")