【问题标题】:Extract link film by Html-Agility-Pack [duplicate]通过 Html-Agility-Pack 提取链接电影 [重复]
【发布时间】:2019-05-05 02:37:42
【问题描述】:

我使用HtmlAgilityPack 在Visual Studio 上使用c# winform 提取网络上的电影信息(如图)。但我无法获得电影链接(如图所示)。 请帮我找到一种方法来突出显示图片中的链接。

HtmlWeb htmlWeb = new HtmlWeb()
{
    AutoDetectEncoding = false,
    OverrideEncoding = Encoding.UTF8  
};
htmlWeb.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36";
HtmlAgilityPack.HtmlDocument document = htmlWeb.Load("http://woohay.com/xem-phim/anh-2018-11458");
String link_film = document.DocumentNode.SelectSingleNode("//div[@class='jw-media jw-reset']/video").Attributes["src"].Value;

Movie_module.FrmVLC frmVLC = new Movie_module.FrmVLC(link_film);
frmVLC.StartPosition = FormStartPosition.CenterScreen;
frmVLC.btn_down.Visible = true;
frmVLC.Show();

【问题讨论】:

    标签: c# html-agility-pack


    【解决方案1】:

    HtmlAgilityPack 将无法提取动态生成的 DOM 内容。我在尝试类似的事情时遇到了同样的问题。

    我最终使用了Selenium,它能够遍历动态生成的DOM 内容,还可以利用HtmlAgilityPack 与从Selenium 提取的内容,这不是很简单,但可以做到。

    【讨论】:

    • Seleniumphantomjs 驱动程序通常足够好。 PhantomJs 非常小,但有一个工作的 javascript 引擎,因此动态 DOM 可以按预期加载(通常)。如果网站很古怪,您总是可以加载无头Chrome 驱动程序。这是一个有点胖的依赖,但总能完成工作。
    • 我尝试使用 selenium,它帮助我实现了我想要的。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    相关资源
    最近更新 更多