我正在尝试从 Youtube 下载 Android 开发教程的完整播放列表。所以我使用savefrom来生成播放列表以供下载。但问题是我在那个播放列表中有这么多视频。因此,我决定编写一个 python 脚本来简化这项工作。但问题是它使用 Java Script 生成链接,所以我无法使用 javascript() 获取生成的链接
示例: http ://ssyoutube.com/watch?v= AfleuRtrJoA 生成下载链接需要 5 秒。
我只想在浏览5 秒后获取页面源。
对于这种工作,我找到了一个名为selenium的好包。
import time
from selenium import webdriver
def savefromnotnet(url):
browser = webdriver.Firefox() # Get local session of firefox
browser.get(url) # Load page
time.sleep(5) # Let the page load, will be added to the API
return browser.page_source()
source = savefromnotnet("http://ssyoutube.com/watch?v=AfleuRtrJoA")
该savefromnotnet
函数打开的 Firefox,它将请求 url,到此为止,一切正常。但是当我想获取页面源browser.page_source()
时,它会显示以下错误。
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 523, in runfile
execfile(filename, namespace)
File "C:\Users\BK\Desktop\Working Folder\Python Temp\temp.py", line 10, in <module>
source = savefromnotnet("http://ssyoutube.com/watch?v=AfleuRtrJoA")
File "C:\Users\BK\Desktop\Working Folder\Python Temp\temp.py", line 8, in savefromnotnet
return browser.page_source()
TypeError: 'unicode' object is not callable