【发布时间】:2023-03-12 16:49:02
【问题描述】:
我目前正在编写 Perl 脚本,我使用 CPAN 模块 WWW:Mechanize 从网站获取 HTML 页面。 但是,我也希望能够处理离线 HTML 文件(我很可能会事先保存自己),所以每次尝试新脚本时我都不需要互联网。 所以基本上我的问题是如何改变这个:
$mech->get( 'http://www.websiteadress.html' );
进入这个:
$mech->get( 'C:\User\myfile.html' );
我已经看到 file:// 可能很有用,但我显然不知道如何使用它,因为我每次都会出错。
【问题讨论】:
-
您确定要在本地文件上使用
WWW::Mechanize吗?当您可以只使用open文件时,使用LWP套件毫无意义,并且该模块的大部分目的是处理链接点击、表单填写和提交,以及模拟浏览器上的后退和前进按钮.对于静态文件,这些都不可能,因此您只需要分析页面,您只需要 HTML::TreeBuilder 哪个WWW::Mechanize子类。 -
正如我所说,我的脚本的目的是在在线页面上工作,本地文件只是一种替代方案,主要用于测试编码错误(我真的很想知道为什么它不起作用!) .感谢您指出另一种方法。
标签: perl www-mechanize