爬爬爬——今天是浏览器窗口切换和给所选人打钩(自动化)

2024-02-13 06:12

本文主要是介绍爬爬爬——今天是浏览器窗口切换和给所选人打钩(自动化),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

学习爬虫路还很长,第一阶段花了好多天了,还在底层,虽然不是我专业要学习的语言,和必备的知识,但是我感觉还挺有意思的。加油,这两天把建模和ai也不学了,唉过年了懒了!

加油坚持就是胜利!!!

先是浏览器窗口切换,这都是给浏览器驱动器发送指令,然后让他去干,很酷!!!!

import timefrom selenium  import webdriver
from selenium.webdriver.common.by import Byurl = "https://cdn2.byhy.net/files/selenium/sample3.html"
wd = webdriver.Edge()
wd.implicitly_wait(10)wd.get(url)element = wd.find_element(By.CSS_SELECTOR,'a')print(element.get_attribute('outerHTML'))
element.click()
#存储下来
mainWindow = wd.current_window_handletime.sleep(5)for handle in wd.window_handles:wd.switch_to.window(handle)print(wd.title)if '必应' in wd.title:breakwd.find_element(By.CSS_SELECTOR,'#sb_form_q').send_keys("hahahah")
time.sleep(1)
wd.find_element(By.CSS_SELECTOR,'#search_icon').click()time.sleep(5)
#返回窗口
wd.switch_to.window(mainWindow)wd.find_element(By.CSS_SELECTOR,'button').click()
wd.find_element(By.CSS_SELECTOR,'button').click()
time.sleep(5)wd.quit()

代码部分:

1.time-给浏览器时间,webdriver建立驱动浏览器,By-寻找(选择)

import time
from selenium  import webdriver
from selenium.webdriver.common.by import By

2.

url = "https://cdn2.byhy.net/files/selenium/sample3.html"
wd = webdriver.Edge()
wd.implicitly_wait(10)

建立联系,然后用

wd.implicitly_wait(10)———如果没有返回就等待,最多10s

3.


element = wd.find_element(By.CSS_SELECTOR,'a')print(element.get_attribute('outerHTML'))
element.click()

找到标签为‘a’,打印‘a’在浏览器的代码是什么,打印的就是什么!!

然后点击(click())

4.

mainWindow = wd.current_window_handle

将现在的储存起来,便于操作完返回

5.

for handle in wd.window_handles:wd.switch_to.window(handle)print(wd.title)if '必应' in wd.title:break

在浏览器的窗口栏找到有‘必应’这两个字的,然后选择

6.搜索‘hahah’

wd.find_element(By.CSS_SELECTOR,'#sb_form_q').send_keys("hahahah")
time.sleep(1)
wd.find_element(By.CSS_SELECTOR,'#search_icon').click()

7.

wd.switch_to.window(mainWindow)wd.find_element(By.CSS_SELECTOR,'button').click()
wd.find_element(By.CSS_SELECTOR,'button').click()
time.sleep(5)

然后返回最初的窗口

结束!!!


                                                        --------- 选择框-----

radio,checkbox,select框的选择

代码:

import time
from selenium.webdriver.support.ui import Select
from selenium import webdriver
from selenium.webdriver.common.by import Byurl = "https://cdn2.byhy.net/files/selenium/test2.html"wd = webdriver.Edge()
wd.implicitly_wait(5)wd.get(url)time.sleep(1)
elements = wd.find_element(By.CSS_SELECTOR,'#s_radio input[checked=checked]')
#print(elements.get_attribute("outerHTML"))
#print('您选的是:'+elements.get_attribute('value'))#选择 ---------------------------radio
wd.find_element(By.CSS_SELECTOR,'#s_radio input[value="小雷老师"]').click()
element = wd.find_element(By.CSS_SELECTOR,'#s_radio input[checked=checked]')
time.sleep(1)
#选择---------------------------checkbox---多选
elements2 = wd.find_elements(By.CSS_SELECTOR,'#s_checkbox input[checked=checked]')
for i in elements2:i.click()
time.sleep(1)
wd.find_element(By.CSS_SELECTOR,'#s_checkbox input[value="小雷老师"]').click()
wd.find_element(By.CSS_SELECTOR,'#s_checkbox input[value="小凯老师"]').click()
time.sleep(1)
#选择---------------------------select---滑动
select = Select(wd.find_element(By.CSS_SELECTOR,'#ss_single'))
select.select_by_visible_text('小雷老师')
time.sleep(1)
#多选
select2 = Select(wd.find_element(By.CSS_SELECTOR,'#ss_multi'))
#删除所有
select2.deselect_all()
select2.select_by_visible_text('小雷老师')
select2.select_by_visible_text('小凯老师')
time.sleep(1)wd.quit()

看着比较多,但是就是几个重复用。

代码:

1.

elements = wd.find_element(By.CSS_SELECTOR,'#s_radio input[checked=checked]')
#print(elements.get_attribute("outerHTML"))
#print('您选的是:'+elements.get_attribute('value'))
‘’

找到你现在目前所选的。

2.radio框

#选择 ---------------------------radio
wd.find_element(By.CSS_SELECTOR,'#s_radio input[value="小雷老师"]').click()
element = wd.find_element(By.CSS_SELECTOR,'#s_radio input[checked=checked]')
time.sleep(1)

找到你要选的,然后点击它,

3.多选

#选择---------------------------checkbox---多选
elements2 = wd.find_elements(By.CSS_SELECTOR,'#s_checkbox input[checked=checked]')
for i in elements2:i.click()
time.sleep(1)
wd.find_element(By.CSS_SELECTOR,'#s_checkbox input[value="小雷老师"]').click()
wd.find_element(By.CSS_SELECTOR,'#s_checkbox input[value="小凯老师"]').click()
time.sleep(1)

找到点击了的,然后在点一次,就是全部清除了。

然后选择

4. select滑动

#选择---------------------------select---滑动
select = Select(wd.find_element(By.CSS_SELECTOR,'#ss_single'))
select.select_by_visible_text('小雷老师')
time.sleep(1)

找到对应的,然后用文本搜索:选择

5.

#多选
select2 = Select(wd.find_element(By.CSS_SELECTOR,'#ss_multi'))
#删除所有
select2.deselect_all()
select2.select_by_visible_text('小雷老师')
select2.select_by_visible_text('小凯老师')

多选的,就是全部删除,然后用文本选择


学习与白月黑羽up主,爆赞!!!

这篇关于爬爬爬——今天是浏览器窗口切换和给所选人打钩(自动化)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/704691

相关文章

Python自动化处理手机验证码

《Python自动化处理手机验证码》手机验证码是一种常见的身份验证手段,广泛应用于用户注册、登录、交易确认等场景,下面我们来看看如何使用Python自动化处理手机验证码吧... 目录一、获取手机验证码1.1 通过短信接收验证码1.2 使用第三方短信接收服务1.3 使用ADB读取手机短信1.4 通过API获取

Rust中的Drop特性之解读自动化资源清理的魔法

《Rust中的Drop特性之解读自动化资源清理的魔法》Rust通过Drop特性实现了自动清理机制,确保资源在对象超出作用域时自动释放,避免了手动管理资源时可能出现的内存泄漏或双重释放问题,智能指针如B... 目录自动清理机制:Rust 的析构函数提前释放资源:std::mem::drop android的妙

Python自动化Office文档处理全攻略

《Python自动化Office文档处理全攻略》在日常办公中,处理Word、Excel和PDF等Office文档是再常见不过的任务,手动操作这些文档不仅耗时耗力,还容易出错,幸运的是,Python提供... 目录一、自动化处理Word文档1. 安装python-docx库2. 读取Word文档内容3. 修改

Python自动化办公之合并多个Excel

《Python自动化办公之合并多个Excel》在日常的办公自动化工作中,尤其是处理大量数据时,合并多个Excel表格是一个常见且繁琐的任务,下面小编就来为大家介绍一下如何使用Python轻松实现合... 目录为什么选择 python 自动化目标使用 Python 合并多个 Excel 文件安装所需库示例代码

JavaWeb-WebSocket浏览器服务器双向通信方式

《JavaWeb-WebSocket浏览器服务器双向通信方式》文章介绍了WebSocket协议的工作原理和应用场景,包括与HTTP的对比,接着,详细介绍了如何在Java中使用WebSocket,包括配... 目录一、概述二、入门2.1 POM依赖2.2 编写配置类2.3 编写WebSocket服务2.4 浏

10个Python自动化办公的脚本分享

《10个Python自动化办公的脚本分享》在日常办公中,我们常常会被繁琐、重复的任务占据大量时间,本文为大家分享了10个实用的Python自动化办公案例及源码,希望对大家有所帮助... 目录1. 批量处理 Excel 文件2. 自动发送邮件3. 批量重命名文件4. 数据清洗5. 生成 PPT6. 自动化测试

CSS自定义浏览器滚动条样式完整代码

《CSS自定义浏览器滚动条样式完整代码》:本文主要介绍了如何使用CSS自定义浏览器滚动条的样式,包括隐藏滚动条的角落、设置滚动条的基本样式、轨道样式和滑块样式,并提供了完整的CSS代码示例,通过这些技巧,你可以为你的网站添加个性化的滚动条样式,从而提升用户体验,详细内容请阅读本文,希望能对你有所帮助...

Oracle数据库如何切换登录用户(system和sys)

《Oracle数据库如何切换登录用户(system和sys)》文章介绍了如何使用SQL*Plus工具登录Oracle数据库的system用户,包括打开登录入口、输入用户名和口令、以及切换到sys用户的... 目录打开登录入口登录system用户总结打开登录入口win+R打开运行对话框,输php入:sqlp

10个Python Excel自动化脚本分享

《10个PythonExcel自动化脚本分享》在数据处理和分析的过程中,Excel文件是我们日常工作中常见的格式,本文将分享10个实用的Excel自动化脚本,希望可以帮助大家更轻松地掌握这些技能... 目录1. Excel单元格批量填充2. 设置行高与列宽3. 根据条件删除行4. 创建新的Excel工作表5

MySQL分表自动化创建的实现方案

《MySQL分表自动化创建的实现方案》在数据库应用场景中,随着数据量的不断增长,单表存储数据可能会面临性能瓶颈,例如查询、插入、更新等操作的效率会逐渐降低,分表是一种有效的优化策略,它将数据分散存储在... 目录一、项目目的二、实现过程(一)mysql 事件调度器结合存储过程方式1. 开启事件调度器2. 创