Python - 使用urllib2检索动态内容

时间:2011-12-10 05:39:07

标签: python urllib2

我正在尝试在网页中嵌入youtube链接。当我使用urllib2检索页面时,我没有看到响应中的链接。我认为嵌入式视频是由我在使用浏览器时加载的页面上的脚本检索的。如何使用python的urllib2获得相同的效果?

示例网页为http://busymovies.appspot.com/News.html?id=2965032

2 个答案:

答案 0 :(得分:3)

要提取动态生成的(使用javascript)内容,您可以使用selenium

#!/usr/bin/env python
from contextlib import closing
from selenium.webdriver import Firefox # pip install selenium

url = "http://busymovies.appspot.com/News.html?id=2965032"

# use firefox to get page with javascript generated content
with closing(Firefox()) as browser:
    browser.get(url)
    link = browser.find_element_by_link_text("Direct Link")
    print link.get_attribute("href")

输出

http://www.youtube.com/v/nLJYkat4HpE&hl=en_US&feature=player_embedded&version=3

答案 1 :(得分:0)

在视频正下方有一个名为“直接链接”的链接。现在,如果您打开源,您将看到它的结构。

enter image description here

您需要做的就是解析HTML&使用id=directlink访问此节点。您可以使用BeautifulSoup。你们都准备好了......