Python selenium交互

视频版教程:一天掌握python爬虫【基础篇】 涵盖 requests、beautifulsoup、selenium

selenium可以模拟用户点击事件,以及控制浏览器前进,后退等操作。

下面是一个模拟百度搜索,点击下一页,控制浏览器后退,前进的案例。

python 复制代码
import time

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

# 创建浏览器操作对象
browser = webdriver.Chrome()

url = "https://www.baidu.com"

browser.get(url)

time.sleep(2)

# 获取文本框的对象
input = browser.find_element(By.ID, "kw")

# 在文本框中输入python
input.send_keys('python')

time.sleep(2)

# 获取百度一下的按钮
button = browser.find_element(By.ID, 'su')

# 点击按钮
button.click()

time.sleep(2)

# 滑到底部
# js_bottom = 'window.scrollTo(0,document.body.scrollHeight)'
js_bottom = 'document.documentElement.scrollTop=10000'
js_top = 'document.documentElement.scrollTop=0'
browser.execute_script(js_bottom)

time.sleep(2)

browser.execute_script(js_top)

time.sleep(2)

# 获取下一页的按钮
next_button = browser.find_element(By.XPATH, '//a[@class="n"]')

# 点击下一页
next_button.click()

time.sleep(2)

browser.execute_script(js_bottom)

time.sleep(2)

# 返回到前一个历史记录 相当于 浏览器的返回按钮
browser.back()

time.sleep(2)

# 返回到后一个历史记录  相当于 浏览器的前进按钮
browser.forward()

browser.execute_script(js_bottom)

time.sleep(2)

# 退出
browser.quit()
相关推荐
我是无敌小恐龙3 分钟前
Java SE 零基础入门 Day05 类与对象核心详解(封装+构造方法+内存+变量)
java·开发语言·人工智能·python·机器学习·计算机视觉·数据挖掘
qq_189807039 分钟前
Less如何处理CSS长文本换行_封装Mixin解决不同场景需求
jvm·数据库·python
小灰灰搞电子11 分钟前
Python self关键字详解及其应用
开发语言·python
HHHHH1010HHHHH13 分钟前
CSS如何处理带有状态切换的折叠菜单_利用BEM修饰符管理状态
jvm·数据库·python
2401_8716965215 分钟前
如何在响应式网页中水平居中表单(CSS 绝对定位居中方案)
jvm·数据库·python
2301_7751481516 分钟前
CSS如何减少对HTML结构依赖_利用BEM命名保持样式的逻辑独立
jvm·数据库·python
计算机徐师兄22 分钟前
Python基于Django的创新实验室系统(附源码,文档说明)
python·django·创新实验室系统·python创新实验室系统·创新实验室·实验室系统·python实验室系统
sinat_3834373623 分钟前
HTML函数调试需要高性能电脑吗_调试环境硬件需求技巧【指南】
jvm·数据库·python
解救女汉子26 分钟前
Nginx如何配置phpMyAdmin访问_反向代理设置方法
jvm·数据库·python
格鸰爱童话29 分钟前
python使用milvus向量库
python·milvus