Python Selenium3 简单操作进行百度搜索

当前环境:Win10 + Python3.7 + selenium==3.141.0,urllib3==1.26.2

python 复制代码
from selenium import webdriver
import time

if __name__ == '__main__':
    # Chrome 路径
    CHROME_PATH = r'C:\Program Files (x86)\65.0.3312.0\chrome-win32\chrome.exe'
    # ChromeDriver 路径
    CHROMEDRIVER_PATH = r'C:\Program Files (x86)\65.0.3312.0\chromedriver_win32\chromedriver.exe'

    options = webdriver.ChromeOptions()
    # 取消 Chrome 正受到自动测试软件的控制
    options.add_experimental_option("excludeSwitches", ["enable-automation"])
    # 取消 请停用以开发者模式运行的扩展程序
    options.add_experimental_option("useAutomationExtension", False)
    # 手动指定使用的浏览器位置
    options.binary_location = CHROME_PATH
    driver = webdriver.Chrome(executable_path=CHROMEDRIVER_PATH, options=options)

    url = 'https://www.baidu.com'
    driver.get(url)
    print(driver.title)

    # 输入框
    element = driver.find_element_by_id('kw')
    element.clear()
    element.send_keys('你好')

    # 百度一下
    element = driver.find_element_by_id('su')
    element.click()

    time.sleep(3)
    print(driver.title)

    # 关闭当前显示的窗口
    driver.close()
    # 退出浏览器
    driver.quit()

    '''
    运行结果:
    百度一下,你就知道
    你好_百度搜索
    '''

其他知识:

复制代码
'''
# 检测是否有未结束 chromedriver 进程 将其关闭
import os
os.system('chcp 65001')
os.system('taskkill /F /IM chromedriver.exe')
'''
复制代码
'''
selenium3  定位元素方法
driver.find_element_by_class_name("className")
driver.find_element_by_css_selector(".className")
driver.find_element_by_id("elementId")
driver.find_element_by_link_text("linkText")
driver.find_element_by_name("elementName")
driver.find_element_by_partial_link_text("partialText")
driver.find_element_by_tag_name("elementTagName")
driver.find_element_by_xpath("xpath")
'''

'''
selenium3 定位多个元素方法
driver.find_elements_by_class_name("className")
driver.find_elements_by_css_selector(".className")
driver.find_elements_by_id("elementId")
driver.find_elements_by_link_text("linkText")
driver.find_elements_by_name("elementName")
driver.find_elements_by_partial_link_text("partialText")
driver.find_elements_by_tag_name("elementTagName")
driver.find_elements_by_xpath("xpath")
'''
复制代码
'''
selenium3 executable_path 写法
from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option("useAutomationExtension", False)
driver = webdriver.Chrome(executable_path=CHROMEDRIVER_PATH, options=options)
'''
复制代码
'''
driver.back(): 返回到跳转前的页面。
driver.close(): 关闭当前显示的窗口。如果打开多个窗口,也只会关闭当前的窗口,其他窗口正常显示。
driver.quit(): 退出浏览器, 不管打开的是几个窗口,全部退出。
'''

参考:

https://www.cnblogs.com/kxtomato/p/16403798.html

driver.back() 、driver.close() 、driver.quit()三者的区别-CSDN博客

相关推荐
shelly聊外贸12 小时前
WhatsApp 聊天记录如何导出为 CSV?使用 Python 进行数据分析
开发语言·python·数据分析
I Am a robert girl12 小时前
从 FlowAct-R2 拆解“会说话的数字人“:流式多模态参考与主动式 Agent 规划
python·数字人·多模态大模型·扩散transformer·流式生成·agent规划
octopus_c12 小时前
C++ 模板详解:函数模板、类模板、特化与分离编译
开发语言·c++·算法
梯度下降者13 小时前
Python使用统计建模解决业务预测问题的常见操作步骤【教程】
python·可解释性·数据清洗·模型选择·业务预测
椒颜皮皮虾྅14 小时前
让文档不止于文字:DeploySharp + PP-Structure,打通版面分析与表格重建
开发语言·学习·c#·.net·cuda
Frag0ut14 小时前
Notepad++ 零基础入门:从记事本到代码编辑器的平滑过渡(2026最新版)
python·编辑器·html·json·notepad++·markdown·记事本
深蓝AI14 小时前
Webhook 重投别再执行两次:Python + SQLite 收件箱实测
python
Eider199814 小时前
Python基础知识之并发相关-2
开发语言·前端·python
第九序言T14 小时前
Python 数据处理进阶(二十二)用 Pandas 做一次完整的用户行为分析
开发语言·python·数据分析·pandas
云和数据.ChenGuang14 小时前
再论深拷贝和浅拷贝
开发语言·人工智能·python·1024程序员节