【问题标题】:Scraping an IFrame which has as source a jsp抓取一个以 jsp 为源的 IFrame
【发布时间】:2018-06-14 09:19:14
【问题描述】:

我是网络抓取的新手,我必须执行以下操作: 1. 转到网页 2. 找一个元素 3. 获取价值

现在我访问网页没有问题,可以正常工作。 问题是我需要的元素实际上来自一个显示在 iframe 中的 jsp。

我正在尝试使用 HtmlAgilityPack 和 ScrapySharp 获取 elemant。

这是我的代码:

ScrapingBrowser Browser = new ScrapingBrowser();
Browser.AllowAutoRedirect = true; 
Browser.AllowMetaRedirect = true;

WebPage PageResult = Browser.NavigateToPage(new Uri("[The website I need to go to]"));

HtmlNode myNode = PageResult.Html.CssSelect("#WREPBody").First();
string innerHtml = myNode.InnerHtml;

这很好用。但它返回以下内容:

<ilayer id="WREPBodyLayer" src="/app014/wrep/rep/gp/jsp/nl/REPGPdata.jsp"></ilayer>

现在我需要的实际元素是使用我认为的 REPGPdata.jsp 显示的。 jsp显示数据如下:

我需要的元素位于标签“Ondernemingsnr”旁边。 有谁知道我如何访问我需要的元素?

【问题讨论】:

  • 你能直接导航到 iframe 的 URL 吗?
  • jsp部分与你遇到的问题无关。请删除标签。

标签: c# web-scraping html-agility-pack scrapysharp


【解决方案1】:

我找到了解决方案。 我只需要浏览到 jsp 并从该结果重新开始抓取。

【讨论】:

  • 是的,这通常是最简单的方法。您可以使用某些无头浏览器做一些事情,但通常您只想这样做。
猜你喜欢
  • 1970-01-01
  • 2023-03-29
  • 1970-01-01
  • 1970-01-01
  • 2018-12-20
  • 2021-05-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多