Pycharm selenium简单demo及底层代码逻辑实现示例

1 先来一个selenium简单demo

import time
from selenium import webdriver

# 创建一个webdriver对象
driver = webdriver.Chrome()
# 如果chrome不是安装在默认路径,则要driver = webdriver(executable_path='chrome.exe的指定路径')

# 访问指定url
driver.get('http://www.baidu.com')
# 找到搜索输入框
el = driver.find_element_by_name('wd')
# el = driver.find_element("id", 'kw')
# el = driver.find_element_by_id('kw')

# 对元素进行输入文本的操作
# time.sleep(3)
el.send_keys('F12打开开发者工具')
# 找到搜索按钮,并点击一次
driver.find_element_by_id('su').click()
# 等待
time.sleep(3)
# 关闭浏览器并释放后台进程,不关闭的话,每运行一次,会创建一个webdriver对象在后台进程
driver.quit()

简单定位元素

el = driver.find_element("name",'wd')
el = driver.find_element("id", 'kw')

这两句代码实现定位元素的效果,打开开发者工具->查看器,点击要定位的位置,这里又有id又有name,所以可以通过name或id定位到这个搜索框。
定位元素

上面就不解释了,我这篇主要记录怎么看底层代码,主要是下面的内容。

2 底层代码实现示例

第一句

driver = webdriver.Chrome()

按住ctrl,然后点击函数Chrome,进入Chrome()的实现代码,如下图
在这里插入图片描述所以实际上这句代码是这样的:

driver = WebDriver(executable_path="chromedriver")

还要加导入:

from selenium.webdriver.chrome.webdriver import WebDriver

第二句

driver.get('http://www.baidu.com')

按住ctrl,点击get,到了这个方法的实现代码,如下图:
在这里插入图片描述所以实际上这句代码是这样的:

driver.execute(Command.GET, {'url': 'http://www.baidu.com'})
import选择

Command.GET下面会有红曲线,找不到这个东西,会发现需要导入,导入出现很多选择,如下图,怎么知道导入哪个?
在这里插入图片描述右击打开的源代码文件,点击copy path,会出现该py文件的路径窗口,所以就知道实际应该import哪个了
在这里插入图片描述

from selenium.webdriver.chrome.webdriver import WebDriver

继续上面的,我们走到了

driver.execute(Command.GET, {'url': 'http://www.baidu.com'})

又可以按住ctrl,点击Command,又会出现下图,发现Command.GET实际上就是"get",所以又可以变成这句:

driver.execute("get", {'url': 'http://www.baidu.com'})

在这里插入图片描述

第三句

el = driver.find_element_by_name('wd')

按住ctrl,点击find_element_by_name,到了下图:
在这里插入图片描述所以这句可以变成

from selenium.webdriver.common.by import By
el = driver.find_element(by=By.NAME, value='wd')

再变成

el = driver.find_element("name", 'wd')

在这里插入图片描述

第四句

el.send_keys('F12打开开发者工具')

按住ctrl,点击send_keys
在这里插入图片描述

el._execute("sendKeysToElement",
                      {'text': "".join(keys_to_typing('F12打开开发者工具')),
                       'value': keys_to_typing('F12打开开发者工具')})

第五句

driver.find_element_by_id('su').click()

与第三句一样的步骤,先变成

driver.find_element("id",'su').click()

再按住ctrl,点击click()
在这里插入图片描述

driver.find_element("id",'su')._execute(Command.CLICK_ELEMENT)

再变成

driver.find_element("id",'su')._execute("clickElement")

最终代码:

包含了转换的过程。

import time
from selenium import webdriver

# 创建一个webdriver对象
# driver = webdriver.Chrome()
from selenium.webdriver.chrome.webdriver import WebDriver
from selenium.webdriver.common.utils import keys_to_typing
from selenium.webdriver.remote.command import Command

driver = WebDriver(executable_path="chromedriver")
# 如果chrome不是安装在默认路径,则要driver = webdriver(executable_path='chrome.exe的指定路径')

# 访问指定url
# driver.get('http://www.baidu.com')
# driver.execute(Command.GET, {'url': 'http://www.baidu.com'})
driver.execute("get", {'url': 'http://www.baidu.com'})

# 找到搜索输入框
# el = driver.find_element_by_name('wd')
# el = driver.find_element(by=By.NAME, value='wd')
el = driver.find_element("name", 'wd')

# 对元素进行输入文本的操作
time.sleep(3)
# el.send_keys('F12打开开发者工具')
el._execute("sendKeysToElement",
                      {'text': "".join(keys_to_typing('F12打开开发者工具')),
                       'value': keys_to_typing('F12打开开发者工具')})
# 找到搜索按钮,并点击一次
# driver.find_element_by_id('su').click()
# driver.find_element("id",'su').click()
# driver.find_element("id",'su')._execute(Command.CLICK_ELEMENT)
driver.find_element("id",'su')._execute("clickElement")
# 等待
time.sleep(10)
# 关闭浏览器并释放后台进程,不关闭的话,每运行一次,会创建一个webdriver对象在后台进程
# driver.quit()
driver.service.stop()
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 1. 首先需要安装Python和pip,确保它们已经安装并配置好了环境变量。 2. 打开PyCharm,创建一个新的Python项目。 3. 在PyCharm的项目中,打开终端(Terminal)。 4. 在终端中输入以下命令来安装selenium: pip install selenium 5. 等待安装完成后,就可以在Python项目中使用selenium了。 ### 回答2: 首先,要在PyCharm中安装Selenium,需要完成以下步骤: 1. 打开PyCharm,创建一个新的Python项目或打开现有项目。 2. 在PyCharm的界面上方菜单栏中找到 "File"(文件)选项,并点击 "Settings"(设置)。 3. 在弹出的设置窗口中,选择 "Project Interpreter"(项目解释器),然后点击右侧的加号图标。 4. 在弹出的对话框中,搜索 "selenium" 并选择 "selenium" 包。 5. 点击 "Install Package"(安装包)按钮进行安装。PyCharm将自动下载并安装Selenium包。 6. 安装完成后,可以在项目中导入Selenium模块并使用它的功能了。例如,可以使用以下代码导入Selenium并打开一个浏览器窗口。 ```python from selenium import webdriver # 实例化一个浏览器对象 browser = webdriver.Chrome() # 打开一个网页 browser.get('https://www.example.com') # 其他Selenium操作代码... # 关闭浏览器 browser.quit() ``` 请注意,上述代码中使用了Chrome浏览器驱动程序,如果您使用的是其他浏览器,需要下载并安装对应的驱动,并将驱动程序路径指定到webdriver的实例中。 希望这个简短的回答能够帮助您在PyCharm中安装Selenium并开始使用它的功能。如果您还有其他疑问,请随时提问。 ### 回答3: 首先,要在PyCharm中安装Selenium,需要按照以下步骤进行操作: 1. 打开PyCharm IDE,并创建一个新的Python项目。 2. 在项目的目录中,打开终端或命令提示符。 3. 在终端中,输入以下命令来安装Selenium库: ``` pip install selenium ``` 这将自动下载并安装Selenium库及其依赖项。 4. 安装完成后,你就可以在你的Python项目中使用Selenium了。 5. 为了使用Selenium,你还需要下载相应的浏览器驱动程序,比如Chrome驱动或Firefox驱动。这些驱动程序负责在自动化测试过程中与浏览器进行交互。 6. 在浏览器中搜索"Chrome驱动下载"或"Firefox驱动下载",然后从官方网站下载对应版本的驱动程序。 7. 一旦你下载了驱动程序,将其解压缩并将可执行文件的路径复制。 8. 在你的Python代码中,使用以下代码来配置并启动Selenium Webdriver: ```python from selenium import webdriver # 配置浏览器驱动程序的路径 driver_path = "驱动程序的路径" # 启动浏览器驱动程序 driver = webdriver.Chrome(executable_path=driver_path) # 如果你下载了Chrome驱动 # driver = webdriver.Firefox(executable_path=driver_path) # 如果你下载了Firefox驱动 ``` 通过以上步骤,你就成功地在PyCharm中安装了Selenium,并配置了浏览器驱动程序,可以开始使用Selenium进行自动化测试和网页操作了。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值