Cách truy cập cửa sổ đăng nhập bật lên trong Selenium bằng Python
Cải thiện bài viết
Lưu bài viết
Thích bài viết
- Cập nhật lần cuối. 14 tháng 7 năm 2022
Cải thiện bài viết
Lưu bài viết
Nhiều trang web sử dụng đăng nhập bằng phương tiện truyền thông xã hội để giúp quá trình đăng nhập dễ dàng cho người dùng. Trong hầu hết các trường hợp, nếu nút được nhấp thì một cửa sổ bật lên mới sẽ mở ra nơi người dùng phải nhập thông tin đăng nhập người dùng của họ. Người ta có thể chuyển các cửa sổ trong trình duyệt theo cách thủ công và nhập thông tin đăng nhập cần thiết để đăng nhập. Nhưng trong trường hợp truy cập web tự động bằng webdriver, trình điều khiển không thể tự động chuyển đổi cửa sổ. Chúng tôi cần thay đổi tay cầm cửa sổ trong trình điều khiển để nhập thông tin đăng nhập trong cửa sổ bật lên. Selenium có chức năng chuyển cửa sổ để truy cập nhiều cửa sổ bằng cùng một trình điều khiển
Đầu tiên, chúng ta phải lấy tay cầm cửa sổ hiện tại từ một webdriver có thể được thực hiện bởi.
driver.current_window_handle
Chúng ta cần lưu nó để có thể xử lý cửa sổ hiện tại. Sau khi cửa sổ bật lên xuất hiện, chúng tôi phải lấy danh sách tất cả các tay cầm cửa sổ hiện có.
driver.window_handles
Sau đó, chúng ta có thể lấy tay cầm cửa sổ của trang đăng nhập từ danh sách này và sau đó chuyển điều khiển. Để chuyển tay cầm cửa sổ, hãy sử dụng.
driver.switch_to.window[login_page]
Sau khi đăng nhập thành công, chúng ta có thể sử dụng phương thức switch_to tương tự để thay đổi điều khiển về trang trước.
Ghi chú. Để chạy mã này, cần có thư viện Selenium và geckodriver cho firefox. Việc cài đặt selen có thể được thực hiện bằng trình cài đặt thư viện bên thứ ba của Python pip. Để cài đặt Selenium, hãy chạy lệnh này
pip install selenium
Đối với geckodriver, hãy tải xuống tệp và thêm đường dẫn của nó vào biến OS PATH để có thể kích hoạt nó từ bất kỳ đâu trong thư mục tệp
Cùng xem code đăng nhập trên zomato. com sử dụng Facebook
Python3
# import the libs
from
selenium
import
webdriver
from
driver.window_handles0
import
driver.window_handles2
driver.window_handles3
driver.window_handles4
driver.window_handles5_______1_______6
driver.window_handles7
driver.window_handles3
driver.window_handles9
driver.switch_to.window[login_page]0
driver.switch_to.window[login_page]1
driver.switch_to.window[login_page]2
driver.window_handles3
driver.switch_to.window[login_page]4
driver.switch_to.window[login_page]5_______1_______6
driver.switch_to.window[login_page]7
driver.window_handles3
driver.switch_to.window[login_page]9
pip install selenium0
pip install selenium1
driver.switch_to.window[login_page]2
driver.window_handles3
pip install selenium4
pip install selenium5
pip install selenium6
pip install selenium7
driver.window_handles3
pip install selenium0
pip install selenium1
driver.switch_to.window[login_page]2
driver.window_handles3
# import the libs
3
pip install selenium5
# import the libs
5pip install selenium7
driver.window_handles3
# import the libs
8
# import the libs
9 from
0from
1 from
2
from
3from
4 from
5
driver.window_handles6
from
7from
8from
9
driver.window_handles6
from
0selenium
2
selenium
3
selenium
4
driver.window_handles3
selenium
6
selenium
7selenium
8selenium
9import
0
driver.window_handles6
import
2import
3_______1_______6 import
5import
6
selenium
7selenium
8import
9import
0
driver.window_handles6
import
2webdriver
3
driver.window_handles6
import
5import
6driver.window_handles3
webdriver
8
pip install selenium5
from
0from
1driver.window_handles3
from
3
pip install selenium5
from
5from
6driver.window_handles3
from
8
pip install selenium5
driver.window_handles00
pip install selenium7
driver.window_handles3
driver.window_handles3
driver.window_handles3
driver.window_handles05
driver.window_handles06
driver.window_handles3
pip install selenium0
driver.window_handles09
driver.switch_to.window[login_page]2
driver.window_handles11
driver.window_handles12_______1_______6
pip install selenium5
driver.window_handles15
driver.window_handles16
selenium
7selenium
8
driver.window_handles19
driver.window_handles20
driver.window_handles21
driver.window_handles22
driver.window_handles3
driver.window_handles24
driver.window_handles25
đầu ra.
Ghi chú cá nhân của tôi arrow_drop_up
Tiết kiệm