问题标签 [webharvest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1179 浏览

java - 将 http 超时设置为 jakarta HttpClient

我在 WebHarvest 配置文件中使用下面的代码来定义 WebHarvest 中 http 元素的超时(Webharvest 使用 Jakarta HttpClient)。
但是,当我将其设置为 20000 时,大约需要 40-50 秒才能达到超时!
当我将它设置为 30000 时,超时永远不会达到(至少在我等待的 2 分钟内)!
我只需要限制响应等待时间。

我还尝试通过以下代码通过 java 代码本身或 HttpClient 来做到这一点:

但我得到了同样的结果!
这样

SO_TIMEOUT 仅在 HTTP 连接不活动时才会启动

那么我可以做些什么来设置等待响应的时间限制呢?

谢谢

0 投票
1 回答
413 浏览

java - WebHarvest 未通过 GET 正确传递 http 参数

我正在尝试使用以下代码解析网页。

但是,脚本没有将“值”作为“参数”,而是得到类似org.webharvest.runtime.web.HttpParamInfo@1983eae7. 使用“post”方法的相同代码可以正常工作,但是这个特定的脚本需要“get”参数。我试过替换<var name="parameter"/>${parameter.toString}但结果是一样的。我该如何解决?

0 投票
1 回答
622 浏览

xml - 我的网络收获认证配置有什么问题?

我最近开始使用 Web-Harvest 作为网络抓取工具。目前,我正在一个项目的开始工作,我想验证/登录到一个网站。在开始之前,我想明确一下代码中的 [URL] 替换了网页的实际 url。

所以,我试图通过执行以下配置来发布登录信息:

如何检索结果信息并遵循重定向?手动登录时,以下扩展名将添加到 URL。似乎有某种随机化以及添加的会话 ID。我想这是我需要在我的解决方案中加入的东西?

以下是页面来源的一部分,这可能是问题的关键。这是一个 WebObjects 问题吗?这是一个javascript问题吗?我是问题吗?:)

任何帮助是极大的赞赏。

0 投票
2 回答
7272 浏览

java - 在java中读取动态网页内容

我需要帮助阅读网页的内容。目前我正在使用以下方法来阅读内容

然而,这种方法存在一个问题。. 一些jsp页面中有ajax,它会随机更新网页的css类,就像Javascript代码一样,只是为了给出一个想法:

因此,当通过上面提到的我的 java 方法读取此页面阅读器时,我得到了

虽然在屏幕上这个类有一个值。但是,现在如果我先保存页面(通过在 Firefox 中单击另存为),那么 jquery 在 CSS 类中附加的值也是可见的。有没有一种方法或方法可以让我读取值或通过保存页面来获取像 firefox 一样的值。我想使用字符串中存在的 Ajax 值读取整个网页的内容。

一方面,我读到这很困难,因为 JAvascript 由浏览器渲染和执行,所以我想知道 firefox 是否有任何可能有帮助的 api?任何建议,将不胜感激。

0 投票
1 回答
402 浏览

xml - Web-Harvest 通过表列标题确定数据类型

我正在使用 Web-Harvest 进行一些网页“抓取”。我有一个需要组织的值表。表非常简单。但是,我需要使用表的列标题来确定每列的数据类型。桌子看起来像这样......

我正在使用 XQuery,如 Web-Harvest 示例中所示,并且我知道如何通过索引以及使用属性(类、id 等)获取值,但在这种情况下,我不确定如何确定第 1 列是名称,第 2 列是年龄,等等...我想以这种形式输出 XML...

我从另一篇文章中看到了这段代码片段,但我不确定它是如何工作的。

看起来每行都引用了祖先(父级?)来查找相应的列标题。除此之外,我迷路了。任何其他信息都会非常有帮助。

提前致谢。

0 投票
1 回答
344 浏览

android - 在 Android 上使用网络收获

我正在构建一个移动应用程序,该应用程序使用网络收获 api 从网站中提取数据并将其存储在文件中。然后应用程序将使用数据来操作它并显示它。我的问题是,当为 java 使用 webharvest 时,配置文件和输出文件的路径是相对于本地磁盘的,例如“C:/config.xml”和“C:/docs”,但是在 Android 项目上使用它时在 Eclipse 上,配置文件应该在项目中,输出文件应该在项目或缓存中。谁能告诉我应该把读取网络收获配置的路径和写入输出 xml 文件的路径放在什么位置?

0 投票
1 回答
3435 浏览

java - 使用 Web-harvest 抓取网页内容

我想从网页中抓取特定内容,为此我正在使用网络收获。当我尝试抓取内容时,它在其他网站上运行良好,但它没有抓取该 URL的内容。

我的 Java 代码在这里:

我的 XML 在这里:

我想抓取此 URL 的第一个块,例如候选人姓名、当前名称、公司等,但我无法通过在 XML 文件中使用其类来抓取,例如(我只尝试了一个第一次尝试抓取候选人姓名)

但它不起作用。谁能告诉我我做错了什么?

0 投票
1 回答
1347 浏览

web-scraping - 使用 Web-Harvest 进行 Web 抓取

我正在尝试使用 web-harvest 库编写一个网络爬虫,以从 realtor.com 获取参数。有没有很好的教程来说明如何做到这一点?我正在使用 Eclipse IDE

0 投票
1 回答
782 浏览

html - 从 html/xml 中提取数据

我正在使用 Webharvest 从网站检索数据。它先将 html 页面转换为 xml 文档,然后根据提供的 xPath 为我获取想要的数据。

现在我正在处理这样的页面:pastebin我在其中展示了我想要获取的块。每个块应作为一个单元返回。

xPath 块的第一个元素是://div[@id="layer22"]/b/span[@style="background-color: #FFFF99"] 我对其进行了测试,它给出了所有“块开始”元素。

块的最后一个元素的 xPath 是://div[@id="layer22"]/a[contains(.,"Join")] 我对其进行了测试,它给出了所有“块结束”元素。

xPath 应返回一组块:

(xPath)[1]= 块 1

(xPath)[2]= 块 2

……

先感谢您

0 投票
1 回答
854 浏览

web-scraping - 使用正确的 Web Scraper

我需要制作一个使用来自客户端的输入地址的网络爬虫,然后从特定站点的该地址检索数据。我下载了Webharvest,从学习如何编写程序开始是正确的吗?

另外,如果可能的话,有人可以指导我学习一个很好的教程来学习如何去做。