python打开浏览器并模拟搜索示例详解

 更新时间:2023年10月07日 16:09:16   作者:雪狼骑兵  
这篇文章主要为大家介绍了python打开浏览器并模拟搜索示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

打开已存在的浏览器

打开已存在的浏览器有个很重要的作用就是,可以对于一些登录场景,提前登录好,不需要模拟登录了。

在命令行中执行打开chrome的命令,在图标上找到chrome的安装位置

在cmd命令行下执行命令

C:\Program Files\Google\Chrome\Application>chrome.exe --remote-debugging-port=9222

此时调试模式会监听9222端口

模拟打开百度,并进行搜索

import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.chrome.options import Options
import pygetwindow as gw
try:
    chrome_options = Options()
    chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
    browser = webdriver.Chrome(options=chrome_options)
    print("浏览器已打开"+browser.title)
    # 切换到前台
    windows = gw.getWindowsWithTitle(browser.title)
    if len(windows) > 0:
        windows[0].activate()
    time.sleep(1)
    # 新建新标签
    browser.execute_script("window.open('');")
    browser.switch_to.window(browser.window_handles[-1])
    time.sleep(2)
    # 在新标签页中打开一个URL
    browser.get('https://www.baidu.com/')
    # 输入搜索词并回车
    elem = browser.find_element(By.ID, "kw")
    elem.send_keys("唯一客服")
    elem.send_keys(Keys.RETURN)
    print("获取搜索列表:")
    # 使用WebDriverWait确保搜索结果已经加载
    WebDriverWait(browser, 10).until(
        EC.presence_of_all_elements_located((By.XPATH, "//div[@id='content_left']//h3/a"))
    )
    # 获取所有的搜索结果标题
    results = browser.find_elements(By.XPATH, "//div[@id='content_left']//h3/a")
    for result in results:
        print(result.text)
    # 关闭标签
    browser.close()
except Exception as e:
    print("An error occurred:", e)

以上就是python打开浏览器并模拟搜索示例详解的详细内容,更多关于python打开浏览器模拟搜索的资料请关注脚本之家其它相关文章!

相关文章

  • Python排序搜索基本算法之堆排序实例详解

    Python排序搜索基本算法之堆排序实例详解

    这篇文章主要介绍了Python排序搜索基本算法之堆排序,结合实例形式详细分析了堆排序的原理、Python实现方法及相关操作注意事项,需要的朋友可以参考下
    2017-12-12
  • Python3中urllib库添加请求头的两种方式

    Python3中urllib库添加请求头的两种方式

    Python 3中的urllib模块可以用来处理URL,包括下载和上传文件、创建和读取cookie、访问Web API等,本文给大家介绍Python3中urllib库添加请求头的两种方式,感兴趣的朋友一起看看吧
    2023-10-10
  • python如何实现最小矩形覆盖问题

    python如何实现最小矩形覆盖问题

    这篇文章主要介绍了python如何实现最小矩形覆盖问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Python二叉搜索树与双向链表转换实现方法

    Python二叉搜索树与双向链表转换实现方法

    这篇文章主要介绍了Python二叉搜索树与双向链表转换实现方法,涉及Python二叉搜索树的定义、实现以及双向链表的转换技巧,需要的朋友可以参考下
    2016-04-04
  • Python3使用requests模块实现显示下载进度的方法详解

    Python3使用requests模块实现显示下载进度的方法详解

    这篇文章主要介绍了Python3使用requests模块实现显示下载进度的方法,结合实例形式分析了Python3中requests模块的配置、使用及显示进度条类的相关定义方法,需要的朋友可以参考下
    2019-02-02
  • Python中tuple类型的使用

    Python中tuple类型的使用

    在Python中,元组(tuple)是一种不可变的序列类型,可以包含多个值,这些值可以是不同类型的,本文主要介绍了Python中tuple类型的使用,感兴趣的可以了解一下
    2023-12-12
  • 详解python中字典的循环遍历的两种方式

    详解python中字典的循环遍历的两种方式

    本篇文章主要介绍了python中字典的循环遍历的两种方式 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • 解决使用pycharm提交代码时冲突之后文件丢失找回的方法

    解决使用pycharm提交代码时冲突之后文件丢失找回的方法

    这篇文章主要介绍了解决使用pycharm提交代码时冲突之后文件丢失找回的方法 ,需要的朋友可以参考下
    2018-08-08
  • 用Python进行栅格数据的分区统计和批量提取

    用Python进行栅格数据的分区统计和批量提取

    该教程其实源于web,我看到之后觉得很实用,于是自己又重复做了一遍,写了详细的注释分享给大家,希望对大家的研究有帮助,本文讲述了栅格的分区统计,批量提取,深化理解遍历循环等内容
    2021-05-05
  • Python中optparser库用法实例详解

    Python中optparser库用法实例详解

    这篇文章主要介绍了Python中optparser库用法实例详解,介绍了optparser的引入,初始化等相关内容,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01

最新评论