Javascript 使用python从vimeo下载嵌入式Iframe视频

Javascript 使用python从vimeo下载嵌入式Iframe视频,javascript,python,video,download,vimeo,Javascript,Python,Video,Download,Vimeo,我一直在到处寻找,我看到了如何使用python下载vimeo视频。到目前为止,我有这个代码。我可以进入父页面,但我不能做任何事情来点击那个iframe。我想最好的方法是登录并点击iframe,然后从那里下载视频,但我遗漏了一些东西。你们有什么想法吗? 如果您需要更多信息,请告诉我,并一如既往地感谢您抽出时间 import spynner import os, sys, urllib os.system("dir") browser = spynner.Browser() #browser.s

我一直在到处寻找,我看到了如何使用python下载vimeo视频。到目前为止,我有这个代码。我可以进入父页面,但我不能做任何事情来点击那个iframe。我想最好的方法是登录并点击iframe,然后从那里下载视频,但我遗漏了一些东西。你们有什么想法吗? 如果您需要更多信息,请告诉我,并一如既往地感谢您抽出时间

import spynner
import os, sys, urllib

os.system("dir")

browser = spynner.Browser()
#browser.show()
url = 'https://somelink.php'
browser.load("https://somelink2.php")
browser.wk_fill("input[name=log]", "loginname")
browser.wk_fill("input[name=pwd]", "password")
browser.click("#wp-submit")
print browser.url, len(browser.html)
browser.load("http://somelink3-00000333/")
browser.click("//player.vimeo.com/video/747474749")
print browser.html
这是我想下载的嵌入式视频

<iframe src="//player.vimeo.com/video/747474749" width="500" height="281"
frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>

该站点允许从客户端运行Javascript。 因此,简而言之,只需运行javascript访问链接就足够了。 javascript:window.location.href=%s;'%uls是实现这一点所需要的一切。我希望它能帮助其他人在未来,也许有更好的方法来做到这一点,请让我知道

def getvideourl(htmldoc): 
        downloadurls = re.findall("//player.+video.\d+", htmldoc) 
        for uls in downloadurls: 
            uls.encode('ascii','ignore') 
            javasinject = 'javascript:window.location.href="%s"; '%uls 
            return javasinject 

    def jsinject(link): 
        str(link) 
        browser.runjs(link) 


    jsinject(str(getvideourl(browser.html))) 
    browser._wait_load()