2016-09-22 90 views
1

當我在PC(Windows 10 x64)上安裝了一個新的乾淨系統後,我遇到了一些python lib for python(當然)的問題。PyCurl需要很長時間才能執行

我在Python 2.7和3.4上試了這個 - 沒有什麼區別。

發送請求(24secs)後,無論目標是什麼,甚至'localhost'都需要很長時間來響應。

件o'code:

import pycurl, time 
from io import BytesIO 

buf = BytesIO() 
c = pycurl.Curl() 
c.setopt(c.URL, 'http://localhost/') 
c.setopt(c.WRITEDATA, buf) 
t = time.clock() 
c.perform() 
print("elapsed time: {} sec".format(time.clock() - t)) 
c.close() 

body = buf.getvalue() 

我試過同我的VPS的機器上(Ubuntu的)和它的作品漂亮。

+0

'經過時間:0.00925174318082秒...(在Windows的py2.6和py2.7中測試)... –

+0

是的,你不會說:( – RayZorPL

+0

如果你嘗試'http:// www .freecodecamp.com /最快網頁在互聯網上?我得到約0.12 –

回答

2

我遇到過同樣的問題,並且正如您在評論中指出的那樣,問題在於DNS查找花費了大量時間。我設法迫使pycurl使用特定的DNS服務器(在這種情況下,谷歌的)來解決此問題:

c.setopt(pycurl.DNS_SERVERS, '8.8.8.8') 

然而,警告執行此代碼時,我已經看到了一些Linux系統崩潰。

+0

謝謝,下次我會嘗試使用pycurl。 – RayZorPL

相關問題