Windows使用selenium操作Edge浏览器实现爬虫

慈云数据 1年前 (2024-03-25) 技术支持 58 0

以前的大部分程序都是操作Chrome,很少有操作Edge,现在以Edge为例。

Selenium本身是无法直接控制浏览器的,不同的浏览器需要不同的驱动程序,Google Chrome需要安装ChromeDriver、Edge需要安装Microsoft Edge WebDriver,其他浏览器也需要安装相应的驱动

edge://version/

edge version

https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/#downloads

Microsoft Edge WebDriver Download

edgedriver python path

PyCharm未更新环境变量时,可以新打开CMD并切换到虚拟环境运行。

conda install selenium -y
# -*- coding: utf-8 -*-
'''
@Author   :   Corley Tang
@contact  :   cutercorleytd@gmail.com
@Github   :   https://github.com/corleytd
@Time     :   2023-12-12 23:24
@Project  :   Hands-on Crawler with Python-edge_with_selenium
使用selenium操作edge访问百度
'''
# 导入所需的库
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
url = 'https://www.baidu.com/'
browser = webdriver.Edge()  # 定义Edge浏览器,默认会加载当前Python虚拟环境目录下的Scripts目录下的msedgedriver.exe,也可以通过executable_path参数指定路径
browser.maximize_window()  # 最大化窗口
try:
    browser.get(url)
    input_box = browser.find_element(By.ID, 'kw')  # 定位网页中id为kw的元素,即百度搜索输入框
    input_box.clear()  # 清空输入框
    input_box.send_keys('Python')  # 输入搜索关键词
    input_box.send_keys(Keys.ENTER)  # 按下回车键
    WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.ID, 'content_left')))  # 等待网页加载完成
    print(browser.current_url)
    print(browser.get_cookies())
    print(browser.title)
    print(len(browser.page_source))
finally:
    time.sleep(5)
    browser.close()

edge baidu  selenium

微信扫一扫加客服

微信扫一扫加客服