Selenium快速入门之1:最常使用方法整理

本文详细介绍Selenium的常见用法,包括浏览器操作、页面导航、元素定位、文本输入、Cookie处理等,适合网络爬虫和自动化测试人员参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Selenium最早是为了测试浏览器、网页的,但目前也被广泛应用于网络爬虫。本文整理Selenium最常见的使用方法。

一、创建webdriver,打开特定页面
 

#打开浏览器、百度网站

driver = webdriver.Chrome()

driver.get("https://baidu.com")

二、设置浏览器大小、设置页面大小
 

driver = webdriver.Chrome()

driver.get("https://baidu.com")

三、页面前进/后退、刷新、保存截屏

#后退

driver.back()

#前进

driver.forward()

#刷新

driver.refresh()

#保存当前页面截屏

driver.save_screenshot("save_1.png")

四、关闭页面、退出浏览器

driver.close()

driver.quit()

五、等待

#强制等待 2 秒

time.sleep(2) 

#隐性等待,最长等 30 秒

dr.implicitly_wait(30)  

#显式等待,每隔 0.5 秒进行一次检查,最长等 20 秒

WebDriverWait(dr, 20, 0.5).until(EC.presence_of_element_located((By.LINK_TEXT,u'首 页')))

六、打开多个页面

# 打开浏览器

driver=webdriver.Chrome()

driver.get("http://baidu.com")

# 停留两秒后打开搜狗搜索

driver=webdriver.Chrome()

driver.get("http://baidu.com")

#停留两秒后打开有道翻译 time.sleep(2)

time.sleep(2)

JS2='window.open("https://fanyi.youdao.com/");'

driver.execute_script(JS2)

七、使用JS下滑到页面底部

driver=webdriver.Chrome()

driver.get("https://top.baidu.com//")

JS="window.scrollTo(10000,document.body.scrollHeight)"

driver.execute_script(JS)

八、Cookie处理

#获取所有cookie

cookies=driver.get_cookies()

#获取key为BAIDUID的cookie

cookie=driver.get_cookie("BAIDUID")

#删除所有的cookie

driver.delete_all_cookies()

九、元素定位

#根据ID定位

driver.find_element_by_id("kw")

#根据NAME定位

driver.find_element_by_name("wd")

#根据Xpath定位

driver.find_element_by_xpath(r'//*[@id="kw"]')

#根据CSS选择器定位

driver.find_element_by_css_selector("#kw")

#根据Link Text定位

driver.find_element_by_link_text("新闻")

关于xpath、CSS的使用,可参见文章:

解析html:Xpath快速了解使用解析html:CSS Selector快速了解使用

十、文本框输入,按钮点击

driver.get("http://cn.bing.com/")

keywords = 'SELENIUM爬虫'

# id="sb_form_q"是 bing 搜索输入框,输入字符串"SELENIUM 自动化测试"

driver.find_element_by_id("sb_form_q").send_keys(keywords)

#点击搜索按钮

driver.find_element_by_id("sb_form_go").click()

十一、不同frame之间转换

#找到特定的frame并切换

Frame_name= driver.find_element_by_id(【Frame_name】) driver.switch_to_frame(Frame_name)

#回到默认的frame

driver.switch_to_default_content()

十二、使用JS修改页面标题、进行弹窗

#启动浏览器,打开页面

driver=webdriver.Chrome()

driver.get("https://www.baidu.com/")

#修改页面标题

time.sleep(5)

JS1="document.title='xxxxxx';"

driver.execute_script(JS1)

#弹窗

time.sleep(5)

JS2=r"alert($(document).attr('title'));"

driver.execute_script(JS2)

#退出

time.sleep(5)

driver.quit()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灰哥数据智能

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值