You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium连接错误、import os黄线及图片保存问题求助

问题解答

1. Selenium出现“Unable connect”错误的解决方法

  • 检查浏览器驱动与浏览器版本匹配度:Chrome对应ChromeDriver、Firefox对应GeckoDriver,必须保证驱动和浏览器大版本一致,版本不匹配会直接导致连接失败,去对应驱动官网下载适配版本即可。
  • 确认驱动路径配置正确:代码中指定驱动时要用真实存在的绝对路径,比如webdriver.Chrome(executable_path="/Users/jun/Downloads/chromedriver"),Windows系统还要加上.exe后缀。
  • 验证目标网站网络连通性:直接用浏览器打开你要访问的URL,若浏览器都无法加载,说明是网络或网站本身的问题,和Selenium无关。
  • 排查代理、防火墙拦截:如果你的网络有代理设置,要在Selenium代码中配置对应代理规则;本地防火墙可能拦截驱动与浏览器的通信,可暂时关闭防火墙测试。
  • 核对代码中的URL:确保URL开头带有http://或https://,比如不能写google.com,要写https://www.google.com。

2. import os语句出现黄线的原因及解决

黄线是PyCharm静态代码检查的提示,分两种情况:

  • 该import os未被代码使用:PyCharm会标记未用到的导入语句,直接删除这条语句即可。
  • 实际已使用但仍标黄:大概率是PyCharm缓存异常或项目Python解释器配置错误,解决方法:
    • 点击File -> Invalidate Caches...,选择Invalidate and Restart重启PyCharm。
    • 检查项目解释器:File -> Settings -> Project: xxx -> Python Interpreter,确认选择的是当前项目的虚拟环境或正确的Python版本。

3. 爬取谷歌图片保存到指定文件夹的代码示例

先确保目标文件夹存在,再实现图片下载保存,示例代码如下:

import os
import requests
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# 目标保存路径
save_folder = '/Users/jun/Desktop/PyCham/selenium image folder'
# 文件夹不存在则创建,exist_ok=True避免重复创建报错
os.makedirs(save_folder, exist_ok=True)

# 初始化浏览器
driver = webdriver.Chrome()
driver.get("https://www.google.com/search?q=dog&tbm=isch")

# 等待图片加载完成(可根据需要调整等待时间)
wait = WebDriverWait(driver, 10)
wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, "img.rg_i")))

# 获取图片元素(这里取前10张为例)
image_elements = driver.find_elements(By.CSS_SELECTOR, "img.rg_i")

for index, img_elem in enumerate(image_elements[:10]):
    try:
        # 获取图片真实链接,优先取src,没有则取data-src
        img_url = img_elem.get_attribute("src") or img_elem.get_attribute("data-src")
        if not img_url:
            continue
        
        # 下载图片内容
        img_data = requests.get(img_url).content
        # 拼接保存路径,用索引避免文件名重复
        save_path = os.path.join(save_folder, f"google_img_{index+1}.jpg")
        # 写入文件
        with open(save_path, "wb") as f:
            f.write(img_data)
        print(f"第{index+1}张图片保存成功")
    except Exception as e:
        print(f"第{index+1}张图片保存失败:{str(e)}")

# 关闭浏览器
driver.quit()

注意事项:

  • 提前安装依赖库:执行pip install requests
  • 谷歌图片的页面元素选择器可能会更新,若无法定位元素,需重新检查页面的CSS选择器
  • 批量爬取时建议添加延时(如time.sleep(1)),避免触发反爬机制

内容的提问来源于stack exchange,提问作者ghkd qudwns

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 23:15:55