如何开始使用 Perl 进行网页抓取?

2024-02-03

我有兴趣学习 Perl。我正在使用 Learning Perl 书籍和 cpan 的网站作为参考。

我期待着使用 Perl 做一些网页/文本抓取应用程序来应用我所学到的东西。

请建议我一些好的选择。

(这不是家庭作业。想要在 Perl 中做一些事情来帮助我利用基本的 Perl 功能)


如果您想要抓取的网页需要 JavaScript 才能正常运行,那么您将需要的不仅仅是WWW::机械化 http://search.cpan.org/perldoc/WWW::Mechanize可以为您提供。您甚至可能不得不通过 Perl 来控制特定的浏览器(例如使用Win32::IE::机械化 http://search.cpan.org/perldoc/Win32::IE::Mechanize or WWW::机械化::Firefox http://search.cpan.org/perldo/WWW::Mechanize::Firefox).

我没试过,不过也有WWW::脚本编写者 http://search.cpan.org/perldoc/WWW::ScripterWWW::Scripter::插件::JavaScript http://search.cpan.org/perldoc/WWW::Scripter::Plugin::JavaScript plugin.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何开始使用 Perl 进行网页抓取? 的相关文章

  • 使用perl求中位数、众数、标准差?

    我有一个数字数组 计算数据集的中位数 众数和标准差的最简单方法是什么 Statistics Basic Mean http p3rl org Statistics Basic Mean Statistics Basic Median htt
  • Perl 命令或模块,如 Linux“文件”命令

    我有一个下载文件的脚本 但这些文件在下载之前没有任何有关它们的信息 在为 Linux 编写代码时 我刚刚调用了qx file filename 查看它是否是 JPEG 图像 如果不是则将其删除 然而 我现在正尝试重写为独立于平台的纯 Per
  • R 中的网页抓取表

    完全菜鸟试图抓取此页面上的表格 我所能做的最远的是加载 rvest 包 我的问题是 我找不到合适的元素 我通过检查器尝试的元素是 table w782 comm lsjz 但它返回长度为0的列表 并在 html table 之后执行 gt
  • For 循环和词法作用域变量

    版本 1 use warnings use strict my count 4 for count 1 8 print Count count n last if count 6 if not defined count print Cou
  • 是否可以使用perl读取pdf文件中的文本?

    我想在 perl 中解析 pdf 文件中的文本 而不将 pdf 转换为任何其他格式 是否可以 是的你可以 看看CAM PDF http search cpan org dist CAM PDF 包裹 您可以使用此模块来提取文本 my pdf
  • 从html中获取属性字符串值

    我正在构建一个宏来使用从网站提取数据vba questions tagged vba 目前 我可以使用元素语法轻松地从表内容中获取值 例如obj getElementsByTagName td innerText 但是 当某些单元格中有一些
  • Perl OO 方法调用第一个参数值 (->)

    就 Perl OO 而言 到底做了什么 gt do 例如我拨打 main 电话 result a b gt mymethod 在我定义的包中mymethod 我使用以下内容 my class 总的来说 我显然没有向mymethod 那么哪里
  • 如何在 Perl 中取消导入函数?

    我正在尝试删除导入的符号 以便它们不能用作对象中的方法 但是no似乎不起作用 也许我不明白不 或者还有其他方法 use 5 014 use warnings use Test More still has carp after no car
  • 当一个模块安装了两个版本时 Perl 会做什么?

    我在正在使用的远程机器上没有 root 访问权限 因此我使用 cpanm 和 local lib 的组合 如下所述here https stackoverflow com a 2980715 1156644将 CPAN 模块安装到我的本地目
  • CMake:如何将 .def 文件添加到 Visual Studio 项目过滤器?

    如何将 def 文件添加到 Visual Studio 项目过滤器 filters文件 Visual Studio 使用 def 文件 CMake代码 set a src a cpp a def add library a SHARED a
  • 网页抓取(R 语言?)

    我想获取中间栏中的公司名称this http www consumercomplaints in bysubcategory mobile service providers page 1 html页面 以蓝色粗体书写 以及登记投诉者的位置
  • Scrapy:在调用之间保存cookie

    有没有办法在 scrapy 爬虫的调用之间保留 cookie 目的 网站需要登录 然后通过 cookie 维持会话 我宁愿重复使用会话 也不愿每次都重新登录 请参阅有关 cookie 的文档 常见问题解答入口 http doc scrapy
  • 如何设置 $!在 Perl 中

    我想在 perl 中编写一些设置 的函数 与内置 perl 函数类似 当我尝试执行此操作时 它抱怨 参数 无法创建管理员用户 在标量分配中不是数字 我试过用谷歌搜索这个 但不幸的是谷歌不会在 所以结果很难得到 if createUser a
  • 多个与单个 Catalyst 应用程序

    我有多个作为 FCGI 运行的 Catalyst 应用程序 将它们整合为具有多个控制器的单个控制器是否有好处 Thanks Simone 内存 大概吧 我认为每台服务器至少要保留 15MB 左右 因此如果您在 3 台服务器上运行 3 个应用
  • 如何保存包含框架/iframe 的完整 html 页面?

    在网页抓取期间 我想将当前页面的 html 保存到文件中以供以后调试 browser html在大多数情况下有帮助 但是当页面包含 iframe frame 时 它 的内容不会返回browser html 我必须用类似的东西单独得到它bro
  • 检测 perl 中声明的包变量

    Given package main our f sub f sub g 1 我怎样才能确定 f 但不是 g 已宣布 即兴的 我以为 main g SCALAR 可能是未定义的 但它是一个善意标量参考值 背景 我想将一个变量导入到main
  • CPAN shell 内存不足。在 Unix 上如何给它更多的内存?

    我得到一个Out of memory 所有安装的消息 我以前从未使用过 cpan 并且不太确定它是如何工作的 我做了一个ulimit在 cpan 目录中 结果是无限的 这是我正在看的内容 usr bin perl MCPAN e shell
  • Perl 中字符串之间的字符匹配计数

    我有一个字符串 例如字符串 1 需要与另一个字符串 字符串 2 匹配 两个字符串的长度相同并且不区分大小写 我想打印两个字符串之间的字符匹配数 E g String 1 stranger String 2 strangem Match co
  • 将参数传递给调试器中的 perl 文件并在系统执行的文件中设置断点

    因此 我使用 perl d file pl 在 perl 调试器中运行一个文件 但 file pl 也应该接受参数 如何向 file pl 提供参数 还有一个问题 file pl 中有这一行 system file2 pl 如果 file2
  • Perl 的 grep 函数如何与正则表达式一起使用?

    以下 grep 函数如何工作 什么作用 0o1Iil do chars grep 0o1Iil 0 9 A Z a z use Data Dumper print Dumper chars 在 chars中生成以下内容 VAR1 0 VAR

随机推荐

  • 使用 javascript 在 html 页面中查找单词

    如何快速搜索 html 页面中的单词 我怎样才能得到这个词所在的html标签 这样我就可以使用整个标签 要查找单词所在的元素 您必须遍历整个树 仅查找文本节点 并应用与上面相同的测试 在文本节点中找到单词后 返回该节点的父节点 var wo
  • 在seaborn中绘制带有孵化的堆积条形图

    我正在尝试使用带有孵化功能的seaborn matplotlib 绘制堆积条形图 但孵化不合适 如图所示 我的代码如下 sc bar sns barplot x Salt Concentration y EPS Produced data
  • Spring 元素必须指定引用或值

    我在 Spring 和构造函数注入方面遇到问题 我想动态创建具有名称的对象 String 和特殊 ID long 但是当加载 spring xml 文件时会发生异常 线程 main 中的异常 java lang ExceptionInIni
  • 将弹出窗口置于前面

    在我的应用程序中 我有一个弹出窗口 其中包含当我选择某些选项时打开的信息 第一次还可以 在所有内容前面弹出突出显示 但是 当它失去焦点时 当用户转到其他窗口时 如果用户再次单击同一选项 我希望弹出窗口再次显示在所有内容的前面 我尝试过类似的
  • iPhone 应用程序的分发(App Store)版本中出现错误

    我创建了一个具有自建照片工具的应用程序 当我测试 调试和临时 时 它工作正常 它是使用 UIScrollView 构建的 并在照片的插槽滚动到屏幕上时将每个照片添加到 UIScroll 视图 但现在该应用程序已在 App Store 中 并
  • 具有多个命令的 Git 别名的语法[重复]

    这个问题在这里已经有答案了 我想创建一个 Git 别名来执行多个命令 但我找不到有关如何完成此操作的文档 具有多个命令的 Git 别名的语法是什么 这是在哪里记录的 来自 man git config alias git 1 命令包装器的命
  • 如何向 R Shiny 表添加行

    我正在尝试使用 R Shiny 构建一个表单 一旦单击表单末尾的操作按钮 它将用于填充表格 我无法弄清楚如何获取表单中的数据并将其添加到表中的新行中 现在 它只是用表单中的任何内容不断更新第一行 我在这里重现了代码的简单版本 ui r li
  • UITabBarController 中的 UIViewController 和 UISplitViewController shouldAutorotateToInterfaceOrientation

    我的 iPad 代码有一些问题 我有一个 UITabBarController 其中包含一些 UIViewController 和 UISplitViewController 问题是 UIViewController 甚至 UISplitV
  • 使用 Javascript 动态创建具有递增 ID 的 dom 元素

    我有一个 ID 为 orangeButton 的 div 每次单击它时都会创建一个新的 div 这工作正常 但是 我希望每个新创建的 div 都有一个增量编号添加到它的 ID 中 我不知道该怎么做 这是我迄今为止带有注释的代码的小提琴 ht
  • Inno Setup 安装 - 访问被拒绝

    我已经使用 inno setup 创建了一个安装 我的应用程序 除其他外 运行后会在子文件夹中创建一个 pdf 文件 然后打开它 但 Windows 7 说访问被拒绝并弹出异常 怎么了 如何使用 innosetup 授予对子文件夹的访问权限
  • 在 python 中处理 try except 的更简洁的方法

    所以 假设我有 3 个不同的调用something something1 and something2 现在 我称之为 try something something1 something2 except Keyerror as e pri
  • VS2012中“从源代码管理中排除”发生了什么

    我想从 TFS 2012 源代码管理中排除代码文件夹中的某些文件 在 VS2012 之前 这是通过 源代码管理资源管理器 右键菜单中的 从源代码管理中排除 命令来完成的 但在VS2012中我找不到它 有人知道它在哪里吗 顺便说一句 我正在使
  • 将类型限制为特定类型

    是否可以将泛型方法限制在特定类型上 我想写这样的东西 public T GetValue
  • 如何在Android中使用SetGroup()在组中显示通知?

    我尝试过使用 0 通知 ID 以及唯一的通知 ID 还使用了 setGroup 如下所示 它仍然每次都会生成一个新的通知 我想合并通知正文并将标题设置为通用 class MyFirebaseMessagingService Firebase
  • 正则表达式非捕获组 - 无用?

    我试图理解这个概念 但我真的看不出它有什么用 所以我假设我没有抓住重点 例如 这个正则表达式 0 9 st nd rd th 将匹配带或不带 st rd 等后缀的数字 So 1st match 0 9 st nd rd th g 返回 第一
  • 如何在 R 中导出 GBM 模型?

    是否有标准 或可用 方法在 R 中导出 GBM 模型 PMML 可以工作 但是当我尝试使用 pmml 库时 可能是错误的 我收到错误 例如 我的代码看起来类似于 library gbm library pmml model lt gbm f
  • VSCode:用户设置中的 TextMate 正则表达式

    我正在尝试更改主题以更适合我的日常使用 但在尝试自定义特定单词或模式时遇到了一些麻烦 我现在正在使用这种格式 editor tokenColorCustomizations textMateRules scope comment setti
  • 如何使用 Spark 计算累积和

    我有一个 String Int 的 rdd 它按键排序 val data Array c1 6 c2 3 c3 4 val rdd sc parallelize data sortByKey 现在我想以零开始第一个键的值 并将后续键作为先前
  • Eclipse 中的 Jetty 8.1.1.v20120215 和 web 应用程序 (JSF + Maven)

    我正在尝试在 Eclipse 中运行我的 web 应用程序 使用 JSf Jetty 8 1 1 v20120215 我下载了 Jetty Adapter 然后在 Eclipse 中添加了 Jetty Server 8 1 然后我在 Jet
  • 如何开始使用 Perl 进行网页抓取?

    我有兴趣学习 Perl 我正在使用 Learning Perl 书籍和 cpan 的网站作为参考 我期待着使用 Perl 做一些网页 文本抓取应用程序来应用我所学到的东西 请建议我一些好的选择 这不是家庭作业 想要在 Perl 中做一些事情