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

使用Perl结合Selenium实现自动化任务示例代码运行报错求助

问题排查与解决思路

核心错误原因

你遇到的两次报错根因是本地未运行Selenium RC/Server服务:WWW::Selenium是Selenium的客户端调用模块,本身不能直接控制浏览器,必须和独立运行的Selenium Server服务通信才能完成浏览器操作,你之前的配置没有对应运行的服务端支撑,所以会出现连接失败、路径不存在的报错。

分步解决步骤

  • 第一步:启动Selenium Server服务
    先在本地安装JRE运行环境,下载匹配WWW::Selenium的Selenium 1/RC版本的独立服务jar包,执行命令java -jar selenium-server-standalone-x.x.x.jar启动服务,服务默认会监听本地4444端口,不需要修改默认端口。
  • 第二步:修正代码端口配置
    你之前将端口改为80的操作是错误的,改回默认的4444端口即可,修正后的代码如下:
    my $sel = WWW::Selenium->new( host => "localhost",
                          port => 4444,
                          browser => "*iexplore",
                          browser_url => "http://www.google.com",
                        );
    $sel->start;
    $sel->open("http://www.google.com");
    $sel->type("q", "hello world");
    $sel->click("btnG");
    $sel->wait_for_page_to_load(5000);
    print $sel->get_title;
    $sel->stop;
    
  • 第三步:额外适配优化建议
    • 若使用IE浏览器测试,需要提前在IE安全设置中开启允许本地脚本运行的选项,否则Selenium无法正常操控浏览器
    • 如果你需要适配Chrome、Edge等现代浏览器,建议替换WWW::Selenium为基于WebDriver协议的Selenium::Remote::Driver模块,适配性更强,也可以省去Selenium RC服务的部署步骤,仅需要安装对应浏览器的驱动程序即可
    • 针对你内部网络自动下载文件的需求,提前在浏览器配置中设置好默认下载路径、禁用下载弹窗确认,Selenium触发下载操作后就可以自动将文件保存到指定路径,无需额外处理弹窗交互

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 20:54:01