民間, 試圖學習requests
模塊爲python ...和一個簡單的項目,以拉任何未完成的停車票。python請求POST cookie會話
這是正確的方式來保存GET
和POST
請求之間的會話和Cookie?
#!/usr/bin/env python
import requests
import urllib
session = requests.Session()
tokenRequest = session.get('https://paydirect.link2gov.com/NYCParking-Plate/ItemSearch')
sessionToken = tokenRequest.cookies['__RequestVerificationToken']
sessionCookies = tokenRequest.cookies
sessionHeaders = tokenRequest.headers
payload = {
'__RequestVerificationToken': sessionToken,
'ItemSearchQuestionUserInput': 'myplate',
'Questions[0].IsRequired': 'True',
'Questions[0].Sequence': 1,
'Questions[0].Text': 'PlateNumber',
'Questions[0].Type': 'Text',
'ItemSearchQuestionUserInput[1].QuestionAnswer': 'NY',
'Questions[1].IsRequired': 'True',
'Questions[1].Sequence': 2,
'Questions[1].Text': 'State',
'Questions[1].Type': 'Text',
'Questions[2].IsRequired': 'False',
'Questions[2].Sequence': 3,
'Questions[2].Text': 'PlateType',
'Questions[2].Type': 'Text',
'SubmitButton': 'Continue'
}
raw = urllib.urlencode(payload)
plateRequest = session.post('https://paydirect.link2gov.com/NYCParking-Plate/ItemSearch/Submit', data=raw, headers=sessionHeaders, cookies=sessionCookies)
print plateRequest.text
似乎沒有工作...林肯定它的東西簡單我失蹤。他們的網址是:https://paydirect.link2gov.com/NYCParking-Plate/ItemSearch
謝謝!
也沒有,他們沒有一個公共API ... – Cmag
有兩個__RequestVerificationToken:先在餅乾和第二的HTML代碼:<輸入名稱=‘__ RequestVerificationToken’類型=‘隱藏’值=」 some_value「/>」。並且來自html的這個令牌應該被放置在有效載荷= { '__RequestVerificationToken':token_from_html}中。但它仍然沒有幫助:(。 – NorthCat
@NorthCat是的,它很爛。希望他們有一個簡單的休息api。反正,你認爲我們在哪裏犯了一個錯誤? – Cmag