2016-12-07 29 views
0

我需要幫助:我需要提交/點擊3個不同的按鈕,以便在某些網頁上使用請求庫。所以我需要點擊button1,然後button2,然後是最後一個button3。按鈕1,2不會重定向到另一個URL,只需提交一些值,第三個按鈕是關於填寫表單並提交,然後重定向到其他地方 - 我需要提交這3個按鈕,然後獲得重定向/響應url。我正在使用的是一些移動運營商的網頁API門,需要提交協議,發送電話號碼和輸入代碼我得到。Python - 點擊多個按鈕使用請求

我不想使用Selenium,我不能使用瀏覽器,只是純代碼。按鈕在HTML代碼中的某處,但它們具有特定的ID和名稱,彼此不同。

我有這個東西(只顯示2個按鈕):

given_url = something.com/?some_params... 

post_data = {'Agree' : 'SubmitAgree'} 
submit_agree = requests.post(url=given_url, data=post_data) 

post_data = {'Send' : 'SendPhone'} 
submit_phone = requests.post(url=given_url, data=post_data) 
... 


print(submit_phone.content) 

我從響應得到了什麼是無 - 狀態代碼是200,但沒有內容的,不知道爲什麼。我正在嘗試使用Cookie,它仍然是一樣的。問題在哪裏,有人可以幫助我嗎?沒有Selenium可以做到這一點嗎?謝謝

+0

你知道[scrapy](https://scrapy.org/)嗎?它通常用來提取(大量的)數據,但你可以用它來提交表單,如果你想在這裏使用你的代碼,你必須提供更多的我認爲我們可以得到的問題 – Saksow

回答

0

從它看起來,請求並不在乎你是否提交表單之前或不是它只是每個職位像新的請求。

我想網站使用你的用戶會話來存儲以前的表單數據。所以你最好使用scrapy,就像我在評論中所說的那樣,this可以提供幫助。