看板 Python 關於我們 聯絡資訊
想問一下,如果我有個頁面(show.php),它需要登入後才看的到。 登入頁面為(login.php),頁面上有個form。 form有兩個input,一個名稱為user_name,一個名稱為pass_word。 後端處理頁面為login_result.php,處理方式為POST。 python version = 2.6 我的目的是想用python寫個可以登入並獲取登入後show.php的html。 想請教該如何做這登入,參考了python reference跟google了, 也參考了#18nYyF-8這篇文章,可是依然無法做登入這動作, user_name跟pass_word的值是已知的。 試過這方法,不過依然無法登入。 import urllib params = urllib.urlencode({'user_name': '123', 'pass_word': '123'}) page = urllib.urlopen('http://aaa.bbb.ccc/login.php', params) print page 單純用urllib沒辦法嗎? 順便想問,那這樣seesion要怎麼留著給抓show.php的時候用? 不知道該往哪個方向尋找答案,懇請解答,感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.128.67.243
iamivers0n:是不是有用到cookie呢? 02/11 21:19
StubbornLin:我猜前面的頁面裡有設session id 把那抓下來 02/11 22:03
StubbornLin:之後登入都附上同一個session id 02/11 22:03
formoxa:樓上是指,我變數應該不是設定user_name,而應該是seesion 02/11 22:55
formoxa:的ID囉。 02/11 22:55
formoxa:阿那...假如是登入yahoo這類的呢?用python而不用browser 02/11 22:56
kenzou:變數還是要帶username&password,只是request header要帶 02/12 01:58
kenzou:cookie 02/12 01:58
mantour:查一下urllib2的cookiehandler和cookielib的用法 02/12 10:28
mantour:然後可能要自己爬一下該網站的原始碼 02/12 12:12
mantour:有時候必須要繞一下 02/12 12:13