我有一个问题,python代码在我的PC上运行得非常快,而我已经尝试了另外4台机器,但它们都以同样的方式运行得比较慢
在我运行代码的PC上,它在3分钟内处理200个请求并返回200个响应。 这台机器没有什么特别之处
i5第5代 8GB内存 固态硬盘驱动器
虽然我已经在功能更强的机器和功能较弱的机器上试过了,但当我运行相同的代码时,速度要慢得多,而在速度较慢的机器上,它在退出之前只做了10条记录,就像它完成了一样。在速度更快的机器上,它最多会出现35条记录,然后退出
知道是什么导致了这个问题吗
我的机器有更多的可再发行版本。他们能提供优势吗
下面是获取部件所涉及的代码
async def fetch(session, payload):
url = ApiUrl
#print(payload)
async with session.get(url, data = payload) as response:
readyResponse= await response.text()
global c
c+=1
print(c)
parseIt(readyResponse) # function that parses results
async def fetch_all(payloads, loop):
connector = aiohttp.TCPConnector(limit=10)
async with aiohttp.ClientSession(connector=connector, loop=loop) as session:
results = await asyncio.gather(*[fetch(session, payload) for payload in allReq], return_exceptions=True)
return results
if __name__ == '__main__':
loop = asyncio.get_event_loop()
payloads = allReq
htmls = loop.run_until_complete(fetch_all(payloads, loop))
我找到了答案
我必须安装pip-install-aiohttp[speedups],其中包括用于通过客户端API和aiodns以及brotlipy加速DNS解析的aiodns
就这样
相关问题 更多 >
编程相关推荐