python单击url下载网页文件_使用不带url的python脚本从网页下载文件,调用onClick函数 - javascript...
有一個網頁帶有鏈接“單擊下載”,單擊該鏈接可以下載文件。
我可以通過轉到網頁并單擊此鏈接來手動下載此文件,但是我需要通過python腳本下載此文件。
如果我看到源代碼,則可以看到錨標記將運行js函數
Download in csv
但是我不知道csv文件的URL,我正在尋找一種通過python下載的方法。
我知道,如果我們使用httplib擁有url,便可以下載文件,但無法理解如何獲取沒有url的文件。
嘗試添加標題中的一些東西
'Content-Disposition':'attachment; filename =“ data.csv”'}
但它似乎起作用。有任何想法嗎 ?
javascript大神給出的解決方案
可以在此處應用兩個基本選項:
模仿onclick()調用中涉及的邏輯-在您的情況下,請使用dataform或requests提交mechanize表單
高級方法-使用PhantomJS使真正的瀏覽器(無頭(selenium)與否)自動化-找到鏈接并單擊它:
from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get('url here')
driver.find_element_by_class_name('download-data-link1').click()
不過,據我所知,單擊鏈接將觸發一個“下載”瀏覽器對話框的出現-然后PhantomJS不是一個選項,因為它不支持下載。如果是Chrome或Firefox,則需要調整瀏覽器功能以自動下載文件而無需打開彈出窗口,請參閱:
Access to file download dialog in Firefox
Firefox + Selenium WebDriver and download a csv file automatically
總結
以上是生活随笔為你收集整理的python单击url下载网页文件_使用不带url的python脚本从网页下载文件,调用onClick函数 - javascript...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何在电脑中使用微信读书阅读小说
- 下一篇: python爬取论坛付费内容_Pytho