【问题标题】:Parse web page containing flash with urllib2使用 urllib2 解析包含 flash 的网页
【发布时间】:2012-11-30 22:57:26
【问题描述】:

我正在尝试解析一些包含 Flash 播放器的网页并使用 urllib2 接收页面 HTML。

此网页正在使用 jwplayer,我需要从网页中获取的数据位于 Flash Object 标记中。看起来像这样:

<object width="100%" height="100%" type="application/x-shockwave-flash" data="https://salsalessons.tv/wp-content/themes/bstrap/js/jwplayer/player.swf" bgcolor="#000000" id="jwplayer-1" name="jwplayer-1" tabindex="0">
    <param name="allowfullscreen" value="true">
    <param name="allowscriptaccess" value="always">
    <param name="seamlesstabbing" value="true">
    <param name="wmode" value="opaque">
    <param name="flashvars" value="SomeValues">
</object>

我需要的数据是这些参数标签之一的值。问题是 urllib2 下载页面就好像它没有安装 flash 一样,在上面应该出现的地方获取此代码:

<div id="jwplayer-1">
<a href="http://get.adobe.com/flashplayer/">Get Adobe Flash Player</a> to watch this video.
</div>

我该怎么做才能让 urllib2 像安装了 Flash Player 一样下载该页面?

谢谢。

【问题讨论】:

    标签: python parsing web-scraping urllib2


    【解决方案1】:

    不是没有安装 flash,而是 jwplayer javascript 没有运行并用播放器替换了那个 div。在您的浏览器中关闭 Javascript,您将获得相同的结果。

    您需要模仿浏览器 - Selenium 是一种选择,尽管快速搜索 SO 会发现其他一些浏览器。

    Python Scraper for Javascript?

    Scraping javascript-generated data using Python

    【讨论】:

      猜你喜欢
      • 2013-07-01
      • 2013-06-29
      • 2013-10-28
      • 1970-01-01
      • 2014-07-05
      • 2011-08-09
      • 2013-04-25
      • 2020-09-02
      • 2015-09-08
      相关资源
      最近更新 更多