python selenium 跳转网页_selenium关于页面跳转

selenium

一种自动化测试工具,可以模拟人来操作浏览器,执行效率有时候还不如人快,因为需要浏览器页面加载完成才能操作,对网速要求严格,可以用于重复性的操作。

准备工作

按照对应平台下载对应版本谷歌浏览器驱动

linux

下载好linux版本对应驱动后

Ubuntu安装 chromedriver:

将下载的文件移动到软件应该呆的目录去:

sudo mv chromedriver /usr/local/bin/chromedriver

改变用户执行的权限:

sudo chmod 777 /usr/local/bin/chromedriver

检验是否正常使用:

chromedriver --version

windows

放在任意环境变量目录下就行,一般放python解释器目录下

G:\python35\Scripts

python3 安装selenium

pip install selenium

开始写代码

这里分成两种情况

新网址,本页刷新

注意点:

这一句会切换到新url对象,如果不写这句,浏览器对象会去原来url页面中,找元素操作,这时候我们希望操作的元素找不到就会报错。

sreach_window=driver.current_window_handle

第二点注意点是在跳转到新页面以后要等页面加载完毕才能操作不然也会报错,所以在对新页面进行操作之前往往需要延时几秒等待页面加载完毕,具体延时事件和页面加载速度有关系。

time.sleep(10)

# 此代码是来使用百度搜索引擎,搜索“58同城”,并本页刷新进入58同城页面

import time

from selenium import webdriver

#

driver = webdriver.Chrome()

# 请求百度 链接

url = 'http://www.baidu.com'

# 执行操作,打开浏览器输入url

driver.get(url)

# 定位页面表单

ele_kw = driver.find_element_by_id('kw')

# 向表单中填入数据

ele_kw.send_keys('58同城')

# 定位页面搜索按钮

ele_su = driver.find_element_by_id('su')

# 延时几秒确保页面加载完毕

time.sleep(1)

sreach_window=driver.current_window_handle

# 点击“百度一下”按钮

ele_su.click()

# 延时几秒确保页面加载完毕

time.sleep(3)

# 找到“58同城”官网的xpath,点击该标签进入

tongcheng = driver.find_element_by_xpath('//*[@id="1"]/h3/a[1]').click()

# 页面全加载完毕后会关闭浏览器

driver.close()

新网址,新标签页刷新

注意点

将处理对象变为新标签页面,否则浏览器操作对象会找不到要操作页面中的元素

driver.switch_to.window(driver.window_handles[-1])

# 此代码直接进入58同城主站,然后代开租房信息,会出现一个新标签页,之后会将处理者切换到新标签页

import time

from selenium import webdriver

#

driver = webdriver.Chrome()

# 请求百度 链接

url = 'http://www.baidu.com'

# 执行操作,打开浏览器输入url

driver.get(url)

# 延时很多秒确保页面加载完毕,58同城网站实在是内容太多,多等等

time.sleep(20)

# 将页面切换到新出现标签

driver.switch_to.window(driver.window_handles[-1])

sreach_window3=driver.current_window_handle

tongcheng2 = driver.find_element_by_xpath('/html/body/div[3]/div[1]/div[1]/div/div[1]/div[1]/span[1]/a').click()

# 页面全加载完毕后会关闭浏览器

driver.close()

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
众所周知,人工智能是当前最热门的话题之一, 计算机技术与互联网技术的快速发展更是将对人工智能的研究推向一个新的高潮。 人工智能是研究模拟和扩展人类智能的理论与方法及其应用的一门新兴技术科学。 作为人工智能核心研究领域之一的机器学习, 其研究动机是为了使计算机系统具有人的学习能力以实现人工智能。 那么, 什么是机器学习呢? 机器学习 (Machine Learning) 是对研究问题进行模型假设,利用计算机从训练数据中学习得到模型参数,并最终对数据进行预测和分析的一门学科。 机器学习的用途 机器学习是一种通用的数据处理技术,其包含了大量的学习算法。不同的学习算法在不同的行业及应用中能够表现出不同的性能和优势。目前,机器学习已成功地应用于下列领域: 互联网领域----语音识别、搜索引擎、语言翻译、垃圾邮件过滤、自然语言处理等 生物领域----基因序列分析、DNA 序列预测、蛋白质结构预测等 自动化领域----人脸识别、无人驾驶技术、图像处理、信号处理等 金融领域----证券市场分析、信用卡欺诈检测等 医学领域----疾病鉴别/诊断、流行病爆发预测等 刑侦领域----潜在犯罪识别与预测、模拟人工智能侦探等 新闻领域----新闻推荐系统等 游戏领域----游戏战略规划等 从上述所列举的应用可知,机器学习正在成为各行各业都会经常使用到的分析工具,尤其是在各领域数据量爆炸的今天,各行业都希望通过数据处理与分析手段,得到数据中有价值的信息,以便明确客户的需求和指引企业的发展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值