Đây là trải nghiệm đầu tiên của tôi về lập trình bằng Python và tôi đang cố gắng đăng nhập vào this trang web. Sau khi tìm kiếm xung quanh tôi thấy rằng nhiều người đã đề xuất sử dụng mechanize
. Chỉ cần chắc chắn rằng tôi thiết lập những thứ chính xác trước khi tôi nhận được mã Tôi đã tải xuống mã zip mechanize
từ trang web và có tập lệnh python của tôi trong thư mục cơ giới chưa được giải nén.Sử dụng cơ giới hóa để đăng nhập vào một trang web
tôi có mã này cho đến nay sử dụng ví dụ khác nhau tôi đã tìm thấy:
import mechanize
theurl = 'http://voyager.umeres.maine.edu/Login'
mech = mechanize.Browser()
mech.open(theurl)
mech.select_form(nr=0)
mech["userid"] = "MYUSERNAME"
mech["password"] = "MYPASSWORD"
results = mech.submit().read()
f = file('test.html', 'w')
f.write(results)
f.close()
Từ nhìn vào nguồn của trang web tôi tin rằng các userid/mật khẩu là tên chính xác cho biểu mẫu. Khi tôi chạy tập lệnh trong IDLE
Tôi nhận được một loạt lỗi bao gồm lỗi hết thời gian và lỗi robot. Truy xuất đầy đủ: Tôi không chắc chắn những gì tôi nên mong đợi ngay cả khi mã hoạt động. Thông tin đăng nhập dành cho email của trường tôi có thư mục lớp học. Trò chơi kết thúc của tôi cho những gì tôi đang cố gắng hoàn thành là khi tôi đăng nhập vào tài khoản của mình, tôi muốn phân tích một số thư mục để lưu trữ thông tin và lưu trữ chúng trong một tệp có thể được chuyển đổi thành nguồn cấp dữ liệu json hoặc RSS. con đường với một sự hiểu biết tốt hơn nhiều về Python chỉ cố gắng đưa ra một ý tưởng rõ ràng hơn về những gì tôi muốn thực hiện.
Bạn nên cài đặt cơ giới hóa bằng 'pip'. – Acorn
"Tôi nhận được một loạt lỗi bao gồm lỗi hết thời gian và lỗi robot". Không phải là rất hữu ích. Cung cấp một traceback đầy đủ. –
Bạn cũng có thể cần sử dụng 'CookieJar' để lưu trữ các cookie. Nếu không, thông tin đăng nhập của bạn sẽ không ảnh hưởng đến đối tượng 'mechanize.Browser'. –