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

2024-05-13 08:02:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在到处寻找,我看到了如何使用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>

Tags: namehttpsimportbrowserurlinput视频os
1条回答
网友
1楼 · 发布于 2024-05-13 08:02:31

该站点允许从客户端运行Javascript。 因此,简单地运行javascript来访问链接就足够了。 javascript:window.location.ref=”%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()

相关问题 更多 >