Enc*_*818 20 python selenium download phantomjs selenium-webdriver
我一直在努力使用PhantomJS/Selenium/python-selenium将文件下载到文件系统.我能够轻松浏览DOM并单击,悬停等.然而,下载文件非常麻烦.我尝试过使用Firefox和pyvirtualdisplay的无头方法,但这种方法效果不佳,而且速度令人难以置信.我知道CasperJS允许文件下载.有谁知道如何将CasperJS与Python集成或如何利用PhantomJS下载文件.非常感激.
val*_*tev 18
尽管这个问题很老,但下载文件PhantomJS仍然是一个问题.但我们可以使用PhantomJS获取下载链接并获取所有需要的cookie,例如csrf令牌等.然后我们可以用来requests实际下载它:
import requests
from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get('page_with_download_link')
download_link = driver.find_element_by_id('download_link')
session = requests.Session()
cookies = driver.get_cookies()
for cookie in cookies:
session.cookies.set(cookie['name'], cookie['value'])
response = session.get(download_link)
Run Code Online (Sandbox Code Playgroud)
现在response.content应该出现实际的文件内容.我们接下来可以写它open或做任何我们想做的事情.
ale*_*cxe 11
PhantomJS目前不支持文件下载.解决方法的相关问题:
据我了解,您至少有3个选择:
casperjs(你应该在这里留下python)xvfb以下也是一些可能有用的链接:
| 归档时间: |
|
| 查看次数: |
19672 次 |
| 最近记录: |