当前位置:网站首页>Selenium browser (2)
Selenium browser (2)
2022-07-04 15:36:00 【Live up to your youth】
summary
In addition to opening and closing the browser 、 Locate outside the page element , The more important part is to visit the page and get the relevant information of the browser , It mainly includes getting the title of the browser 、URL、 obtain cookies、 Call the warning window of the browser 、 Browser navigation and switching windows 、 Tabs, etc .
function
Page navigation
The navigation function of the browser mainly includes accessing 、 Forward 、 back off 、 Refresh four parts . This is also the function that most browsers must realize .
1、 visit URL
driver.get("https://blog.csdn.net")
2、 back off
driver.back()
3、 Forward
driver.forward()
4、 page refresh
driver.refresh()
Get page information
Every time you open a page , The browser will store information about the page . This mainly includes the title of the browser page and URL.
1、 Get the title
driver.title
2、 obtain URL
driver.current_url
Cookie
cookie, It's some websites to identify users , Conduct Session Tracking data stored on the user's local terminal ( Usually encrypted ), Information temporarily or permanently saved by the user's client computer . if necessary cookie To identify users , You need to cookie To operate .
1、 add to cookie
cookie_dict = {"name":"key", "value": "value"}
driver.add_cookie(cookie_dict)
among ,cookie Of sameSite Property allows the user to guide the browser to control cookie, Whether to send with the request initiated by the third-party site . It was introduced to prevent CSRF( Cross-site request forgery ) attack . When sameSite Property is set to Strict,cookie Will not be sent with requests from third-party websites ; When sameSite Property is set to Lax, cookie Will be initiated with third-party websites GET Request sent together .
cookie_dict = {"name":"key", "value": "value", 'sameSite': 'Strict'}
driver.add_cookie(cookie_dict)
2、 Get a single cookie
driver.get_cookie("key")
3、 Get all cookie
driver.get_cookies()
4、 Removing a single cookie
driver.delete_cookie("key")
5、 Delete all cookie
driver.delete_all_cookies()
Switch Frame
1、 adopt element Switch
# Store web page elements
iframe = driver.find_element(By.CSS_SELECTOR, "#modal > iframe")
# Switch to the selected iframe
driver.switch_to.frame(iframe)
2、 adopt name or id Property to switch . If frame or iframe have id or name attribute , You can use this property . If the name or id It's not unique on the page , So switch to the first one you find .
# adopt id Switch frames
driver.switch_to.frame('buttonframe')
3、 Use index to switch .
# Switch to... Based on index 2 individual iframe
iframe = driver.find_elements_by_tag_name('iframe')[1]
4、 Switch back to the original frame.
# Switch back to the default
driver.switch_to.default_content()
Switch windows or tabs
1、 Create and switch new tabs or windows
# Open a new window and switch to a new window
driver.switch_to.new_window("window")
# Open a new tab and switch to a new tab
driver.switch_to.new_window("tab")
2、 Switch back to the original tab or window
original_window = driver.current_window_handle
driver.switch_to.window(original_window)
3、 Close label or window
driver.close()
Window management
1、 Get window size
driver.get_window_size()
2、 Set window size
size = (1024, 768)
driver.set_window_size(size)
3、 Get the window position
driver.get_window_position()
4、 Set the window position
position = (100, 100)
driver.set_window_position(position)
5、 Maximum and minimum windows
# Maximize
driver.maximize_window()
# To minimize the
driver.minimize_window()
6、 Full screen mode
driver.fullscreen_window()
7、 Window capture
driver.save_screenshot('./image.png')
8、 Screenshot of an element in the window
element = driver.find_element(By.CSS_SELECTOR, 'h1')
element.screenshot('./image.png')
边栏推荐
- MYSQL索引优化
- Weibo and Huya advance into interest communities: different paths for peers
- 【读书会第十三期】 音频文件的封装格式和编码格式
- Redis 發布和訂閱
- 开源人张亮的 17 年成长路线,热爱才能坚持
- 2022 financial products that can be invested
- Weekly recruitment | senior DBA annual salary 49+, the more opportunities, the closer success!
- MySQL组合索引(多列索引)使用与优化案例详解
- How to rapidly deploy application software under SaaS
- Unity script API - transform transform
猜你喜欢

华为云数据库DDS产品深度赋能

科研漫画 | 联系到被试后还需要做什么?

這幾年爆火的智能物聯網(AIoT),到底前景如何?

Weekly recruitment | senior DBA annual salary 49+, the more opportunities, the closer success!

Blood cases caused by Lombok use

Live broadcast preview | PostgreSQL kernel Interpretation Series II: PostgreSQL architecture
一篇文章搞懂Go语言中的Context

大神详解开源 BUFF 增益攻略丨直播

Redis publier et s'abonner

Preliminary exploration of flask: WSGI
随机推荐
宽度精度
MySQL学习笔记——数据类型(2)
2022年九大CIO趋势和优先事项
MP3是如何诞生的?
暑期复习,一定要避免踩这些坑!
Unity脚本API—Component组件
selenium 元素交互
Width and alignment
Unity脚本介绍 Day01
Unity脚本API—Transform 变换
Redis publish and subscribe
Quelles sont les perspectives de l'Internet intelligent des objets (aiot) qui a explosé ces dernières années?
Lombok使用引发的血案
Logstash~Logstash配置(logstash.yml)详解
Unity脚本API—GameObject游戏对象、Object 对象
【读书会第十三期】FFmpeg 查看媒体信息和处理音视频文件的常用方法
Go deep into the details of deconstruction and assignment of several data types in JS
LeetCode 58. 最后一个单词的长度
LeetCode 1184. Distance between bus stops -- vector clockwise and counterclockwise
%S format character