2013-07-29 53 views
-3

我創建了一個腳本,其中需要兩個文本文件「username.txt」和「password.txt」。我的腳本嘗試使用2個文本文件中提供的給定數據登錄。我在username.txt文件中有[email protected][email protected],在password.txt中有password1到password10。如果它成功登錄它應該給我一個HTTP請求代碼200,如果不成功,它應該給我一個代碼400.我的代碼只運行第一行,並沒有運行其餘的。我該如何解決這個問題。這是我的代碼。用戶名和密碼未能在網站中正確加載

import urllib, urllib2 

user = open ('users.txt' , 'r') 
password = open ('password.txt' , 'r') 
pa = ''.join(password) 

for users in user: 
    login_data = pa + users 
    base_url = 'http://mymail.com'  
# login action we want to post data to 
response = urllib2.urlopen(base_url)  
login_action = '/auth/login' 
login_action = base_url + login_action 
response = urllib2.urlopen(login_action, login_data) 
response.read() 
print response.headers 
print response.getcode() 

這是我運行腳本時的輸出。馬克我已經設置,都應該失敗的用戶,但我得到一個代碼200

Date: Mon, 29 Jul 2013 14:54:59 GMT 
Server: Apache 
X-Powered-By: PHP/5.3.3 
Set-Cookie: PHPSESSID=o3jlu86jgs7uj24fod107aps26; path=/ 
Cache-Control: no-cache 
Connection: close 
Transfer-Encoding: chunked 
Content-Type: text/html; charset=UTF-8 

200 
+0

您是否嘗試使用固定'user'和'password'值登錄? – 2013-07-29 14:54:10

+2

「運行第一行只意味着什麼」?有錯誤嗎?如果是的話,你可以用fullt raceback發佈嗎? – dm03514

+1

首先,您可以嘗試*閱讀*文件user = open('users.txt','r')。readlines()' – danodonovan

回答

-1

我所要做的就是確保我的環追溯到嵌套循環的開始和使用。尋求功能,並加載所有的密碼,並嘗試出來。

import urllib, urllib2 

user = open ('users.txt' , 'r') 
password = open ('password.txt' , 'r') 

for users in user: 
    password.seek(0) 
    for pass_list in password: 
     login_data = users + '\n' + pass_list 
     print login_data 

base_url = 'http://my-site.com'  
#login action we want to post data to 
response = urllib2.urlopen(base_url)  
login_action = '/auth/login' 
login_action = base_url + login_action 
response = urllib2.urlopen(login_action, login_data) 
response.read() 
print response.headers 
print response.getcode() 
相關問題