Tôi mới sử dụng lập trình web và gần đây đã bắt đầu xem xét sử dụng Python để tự động hóa một số quy trình thủ công. Những gì tôi đang cố gắng làm là đăng nhập vào một trang web, nhấp vào một số menu thả xuống để chọn cài đặt và chạy báo cáo.Sử dụng thư viện Yêu cầu của Python để điều hướng các trang web/Các nút bấm
Tôi đã tìm thấy thư viện yêu cầu được hoan nghênh: http://docs.python-requests.org/en/latest/user/advanced/#request-and-response-objects và đã cố gắng tìm cách sử dụng nó.
Tôi đã đăng nhập thành công trong việc sử dụng câu trả lời bpbp của trên trang này: How to use Python to login to a webpage and retrieve cookies for later usage?
sự hiểu biết của tôi về "click" một nút là viết một lệnh bài() bắt chước một nhấp chuột: Python - clicking a javascript button
Câu hỏi của tôi (kể từ khi tôi mới đến lập trình web và thư viện này) là làm thế nào tôi sẽ đi về kéo dữ liệu tôi cần phải tìm ra cách tôi sẽ xây dựng các lệnh này. Tôi đã xem xét [RequestObject] .headers, .text, v.v. Bất kỳ ví dụ nào cũng tuyệt vời.
Như mọi khi, cảm ơn sự giúp đỡ của bạn!
EDIT ::: Để làm cho câu hỏi này cụ thể hơn, tôi gặp sự cố khi tương tác với các khía cạnh khác nhau của trang web. Những hình ảnh sau đây cho thấy những gì tôi đang thực sự cố gắng để làm:
Tôi đang trên một trang web trông như thế này. Có một menu thả xuống có ngày có thể nhấp có thể thay đổi. Mục tiêu của tôi là tự động thay đổi ngày thành ngày gần đây nhất, "nhấp" "Lưu và Chạy" và tải xuống báo cáo khi nó kết thúc chạy.
Tôi chưa có nhiều hướng để thử mọi thứ. Tôi đã chỉnh sửa bài đăng với ý tưởng cụ thể hơn về những gì tôi đang cố gắng thực hiện, vì vậy tôi không nghĩ đó chỉ là một trình phân tích cú pháp tốt để trích xuất HTML, nhưng cách "đăng" thông tin khác nhau lên trang web để hoàn thành nhiệm vụ, đặc biệt là các thao tác 'nhấp' – so13eit
xem [selenium] (https://pypi.python.org/pypi/selenium) nếu có javascript trong các trang bạn đang cố thu thập dữ liệu. – djas
Một luồng công việc có thể cho một quá trình như thế này là tải trang đang được đề cập đến (sử dụng requests.get()), tìm ra bất kỳ phần tử biểu mẫu động nào bạn cần lấy từ trang và sau đó sử dụng requests.post() để gửi thông tin bạn cần. Sử dụng công cụ dev của trình duyệt có thể cực kỳ có giá trị để xem chính xác những gì đang được gửi trong yêu cầu POST. – brechin