[問題] os.system() 問題

看板Python作者 (HIHIHI)時間14年前 (2011/07/09 10:00), 編輯推噓0(0011)
留言11則, 5人參與, 最新討論串1/1
請問一下,小弟使用os.system去呼叫wget抓檔, 但程式常會pending在下面步驟就不會往下執行, 目前不知道是什麼原因,因為同一個檔, 有時候會pending有時不會,且可能抓幾百個檔才會遇到一次此問題, 但遇到後就只能關掉DOS視窗,即使按Ctrl+C也無法中斷程式 目前找不到是什麼原因造成的,是否有人可提供思考方向 或是 os.system可設定返回時間.... os.system("wget --tries=3 --timeout=60 http://..") -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.25.189.170 ※ 編輯: tumc 來自: 114.25.189.170 (07/09 18:01)

07/09 18:05, , 1F
subprocess
07/09 18:05, 1F

07/09 20:10, , 2F
使用subprocess也會這樣,很怪的是wget有把檔抓下來,但卻沒返
07/09 20:10, 2F

07/09 20:10, , 3F
07/09 20:10, 3F

07/10 00:16, , 4F
是不是對方的 server 有做手腳,有設定同一ip不可抓太多次?
07/10 00:16, 4F

07/10 00:16, , 5F
wget 有debug mode嗎?
07/10 00:16, 5F

07/10 00:58, , 6F
應該不是server,因為有用perl試,是不會這樣的
07/10 00:58, 6F

07/10 00:59, , 7F
有分別試subprocess.call(cmd),subprocess.call(cmd.split())
07/10 00:59, 7F

07/10 01:00, , 8F
兩種方式會出現此現象,但後者會很久才會出現
07/10 01:00, 8F

07/10 02:52, , 9F
看起來比較像是 wget 的問題, 用 urllib 改寫吧
07/10 02:52, 9F

07/10 10:24, , 10F
目前也只能用urllib2改寫了,謝謝
07/10 10:24, 10F

07/13 10:58, , 11F
07/13 10:58, 11F
文章代碼(AID): #1E62QdJ9 (Python)