python_for_analytics
/
2.2.3_LEC_selenium_authorization.ipynb
115 строк · 2.8 Кб
1{
2"cells": [
3{
4"cell_type": "markdown",
5"metadata": {},
6"source": [
7"# Автоматизация авторизации с помощью Selenium\n",
8"Документация:\n",
9"- https://selenium-python.readthedocs.io/\n",
10"- https://selenium-python.com/"
11]
12},
13{
14"cell_type": "code",
15"execution_count": 1,
16"metadata": {},
17"outputs": [],
18"source": [
19"from selenium import webdriver"
20]
21},
22{
23"cell_type": "code",
24"execution_count": 2,
25"metadata": {},
26"outputs": [],
27"source": [
28"# https://chromedriver.chromium.org/downloads\n",
29"\n",
30"options = webdriver.ChromeOptions()\n",
31"options.binary_location = '/Applications/Yandex.app/Contents/MacOS/Yandex'\n",
32"\n",
33"# необходимо указывать полный адрес файла chromedriver\n",
34"webdriver_address = '/Users/kbashevoy/Desktop/Нетология/Занятия/Занятие 10/selenium_example/chromedriver'\n"
35]
36},
37{
38"cell_type": "markdown",
39"metadata": {},
40"source": [
41"### Просто открыть страницу"
42]
43},
44{
45"cell_type": "code",
46"execution_count": 3,
47"metadata": {},
48"outputs": [],
49"source": [
50"driver = webdriver.Chrome(webdriver_address, options=options)\n",
51"driver.get(\"http://the-internet.herokuapp.com\")"
52]
53},
54{
55"cell_type": "markdown",
56"metadata": {},
57"source": [
58"### Форма авторизации с заполнением"
59]
60},
61{
62"cell_type": "code",
63"execution_count": 4,
64"metadata": {},
65"outputs": [],
66"source": [
67"import time"
68]
69},
70{
71"cell_type": "code",
72"execution_count": 5,
73"metadata": {},
74"outputs": [],
75"source": [
76"driver = webdriver.Chrome(webdriver_address, options=options)\n",
77"driver.get('http://the-internet.herokuapp.com/login')\n",
78"\n",
79"time.sleep(5)\n",
80"\n",
81"username = driver.find_element_by_id(\"username\")\n",
82"password = driver.find_element_by_id(\"password\")\n",
83"\n",
84"username.send_keys(\"tomsmith\")\n",
85"password.send_keys(\"SuperSecretPassword!\")\n",
86"\n",
87"time.sleep(5)\n",
88"\n",
89"# еще вариант find_element_by_css_selector('button.radius')\n",
90"button = driver.find_element_by_xpath(\"//button[@class='radius'][@type='submit']\").click()"
91]
92}
93],
94"metadata": {
95"kernelspec": {
96"display_name": "Python 3 (ipykernel)",
97"language": "python",
98"name": "python3"
99},
100"language_info": {
101"codemirror_mode": {
102"name": "ipython",
103"version": 3
104},
105"file_extension": ".py",
106"mimetype": "text/x-python",
107"name": "python",
108"nbconvert_exporter": "python",
109"pygments_lexer": "ipython3",
110"version": "3.9.13"
111}
112},
113"nbformat": 4,
114"nbformat_minor": 2
115}
116