文章詳情頁
python - subprocess模塊怎樣返回執行文件內容?
瀏覽:128日期:2022-07-05 11:48:27
問題描述
如下面的代碼,調用mplayer播放本地音頻文件,是否能夠通過p獲取到filepath文件中的數據?
p=subprocess.Popen(['mplayer',filepath],shell=False,stdin=subprocess.PIPE,stderr=subprocess.PIPE)
filepath也可能是個url,需要其中的數據,但是不想額外地再次訪問這個地址。-------補充-------試著調試時跟進去過,想看看有沒有在調用mplayer前獲取了文件內容,但是到了subprocess模塊里,單步調試不管用了,所以想知道是否在調用mplayer前subprocess模塊已經拿到數據,如果是那就能獲取這些數據了。
問題解答
回答1:subprocess只是一個調用命令的庫, 它的stdin, stdout也只是儲存 命令輸出的 結果, 如果你的命令, 在執行過程中, 有結果,有文本或者什么別的輸出, 那么可以獲取, 但是如果你說像解析這個音頻文件, 那應該是不行的, 或者你需要別的解析方式去解釋, 或者直接打開那個文件, 說不定也能得到你想要的
回答2:感覺你想獲取的是音頻數據的metadata,如實是MP3的話可以試試ID3這個庫。
相關文章:
1. android - 安卓做前端,PHP做后臺服務器 有什么需要注意的?2. mysql - ubuntu開啟3306端口失敗,有什么辦法可以解決?3. javascript - 從mysql獲取json數據,前端怎么處理轉換解析json類型4. mysql - C#連接數據庫時一直這一句出問題int i = cmd.ExecuteNonQuery();5. mysql replace 死鎖6. extra沒有加載出來7. 求救一下,用新版的phpstudy,數據庫過段時間會消失是什么情況?8. thinkPHP5中獲取數據庫數據后默認選中下拉框的值,傳遞到后臺消失不見。有圖有代碼,希望有人幫忙9. javascript - 微信網頁開發從菜單進入頁面后,按返回鍵沒有關閉瀏覽器而是刷新當前頁面,求解決?10. django - Python error: [Errno 99] Cannot assign requested address
排行榜
