[問題] login的小問題

看板Python作者 (formoxa)時間16年前 (2010/02/11 21:08), 編輯推噓2(209)
留言11則, 5人參與, 最新討論串1/1
想問一下,如果我有個頁面(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

02/11 21:19, , 1F
是不是有用到cookie呢?
02/11 21:19, 1F

02/11 22:03, , 2F
我猜前面的頁面裡有設session id 把那抓下來
02/11 22:03, 2F

02/11 22:03, , 3F
之後登入都附上同一個session id
02/11 22:03, 3F

02/11 22:55, , 4F
樓上是指,我變數應該不是設定user_name,而應該是seesion
02/11 22:55, 4F

02/11 22:55, , 5F
的ID囉。
02/11 22:55, 5F

02/11 22:56, , 6F
阿那...假如是登入yahoo這類的呢?用python而不用browser
02/11 22:56, 6F

02/12 01:58, , 7F
變數還是要帶username&password,只是request header要帶
02/12 01:58, 7F

02/12 01:58, , 8F
cookie
02/12 01:58, 8F

02/12 10:28, , 9F
查一下urllib2的cookiehandler和cookielib的用法
02/12 10:28, 9F

02/12 12:12, , 10F
然後可能要自己爬一下該網站的原始碼
02/12 12:12, 10F

02/12 12:13, , 11F
有時候必須要繞一下
02/12 12:13, 11F
文章代碼(AID): #1BT05C_t (Python)