selenium获取当前页面的url、源码、title的方法

yipeiwu_com6年前Python基础

此篇博客学习的api如标题,分别是:

current_url    获取当前页面的url;

page_source    获取当前页面的源码;

title        获取当前页面的title;

将以上方法按顺序练习一遍,效果如GIF:

from selenium import webdriver
from time import sleep

sleep(2)
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")

# 移动浏览器观看展示
driver.set_window_size(width=500, height=500, windowHandle="current")
driver.set_window_position(x=1000, y=100, windowHandle='current')
sleep(2)

# 获取当前页面title并断言
title = driver.title
print("当前页面的title是:", title, "\n")
assert title==u"百度一下,你就知道","页面title属性值错误!"
sleep(2)

# 获取当前页面的源码并断言
pageSource = driver.page_source

try:
  assert u"百度一下,你就不知道" in pageSource, "页面源码中未找到'百度一下,你就知道'关键字"
except:
  print("源码这里故意断言错误", "\n")
sleep(2)

# 获取当前页面url并断言
currentPageUrl = driver.current_url
print("当前页面的url是:", currentPageUrl)
assert currentPageUrl == "https://www.baidu.com/", "当前网页网址非预期!"

sleep(2)
driver.quit()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python的互斥锁与信号量详解

并发与锁 多个线程共享数据的时候,如果数据不进行保护,那么可能出现数据不一致现象,使用锁,信号量、条件锁 互斥锁 1. 互斥锁,是使用一把锁把代码保护起来,以牺牲性能换取代码的安全...

Python3 虚拟开发环境搭建过程(图文详解)

Python3 虚拟开发环境搭建过程(图文详解)

虚拟环境的搭建 为什么要使用虚拟环境# 1、使不同应用开发环境相互独立 2、环境升级不影响其他应用,也不会影响全局的python环境 3、防止出现包管理混乱及包版本冲突 windows平...

导入tensorflow时报错:cannot import name 'abs'的解决

导入tensorflow时报错:cannot import name 'abs'的解决

一,问题背景 作者在用tensorflow做实验时,import tensorflow忽然报错:cannot import name 'abs'。错误情况如下所示: 这个问题出现的比较...

详解Django框架中用户的登录和退出的实现

Django 提供内置的视图(view)函数用于处理登录和退出 (以及其他奇技淫巧),但在开始前,我们来看看如何手工登录和退出。 Django提供两个函数来执行django.contr...

在Python中将函数作为另一个函数的参数传入并调用的方法

在Python中,函数本身也是对象,所以可以将函数作为参数传入另一函数并进行调用 在旧版本中,可以使用apply(function, *args, **kwargs)进行调用,但是在新版...