簡體   English   中英

Urllib2問題的Python MultiThreading

[英]Python MultiThreading With Urllib2 Issue

我可以同時使用多個線程快速下載多個文件,但問題是幾分鍾后它會逐漸減慢到幾乎完全停止,我不知道為什么。 我可以看到我的代碼沒有任何問題,我的RAM / CPU也沒問題。我唯一能想到的是urllib2沒有正確處理大量的連接。 如果它有幫助,我使用代理但我沒有它們也有這個問題。 有沒有人對此問題有任何建議或見解? 謝謝!

你能否確認在沒有python的情況下同時下載相同數量的數據會繼續快速下載? 問題可能不在於您的代碼,而在於您的連接受到限制或者網站服務於文件。

如果這不是問題,您可以嘗試使用pyprocessing庫來實現多進程版本而不是多線程版本。 如果您正在使用python 2.6,則pyprocessing作為多處理包含在分發中。 將線程代碼轉換為多進程代碼非常容易,所以如果只是為了確認線程問題,那么值得一試。

與建議的其他答案一樣,問題可能出在您的連接或提供文件的站點上。 如果您可以在本地針對測試服務器運行代碼,那么您將能夠消除此問題。

如果在使用測試服務器時問題消失,則問題出在您的連接或遠程服務器上。

如果在使用測試服務器時問題仍然存在,那么它最像是代碼中的某些內容,但是您至少會擁有服務器日志,以便更深入地了解正在發生的事情。

至於你可以探索的另一個途徑, 這個主題建議使用httplib2而不是urllib2。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM