@beginer123

Python многопотончость многопроцессорность?

Есть следующий код(просто парсит 5 сайтов):
Как его можно ускорить?(у меня время выполнения примерно 2-3 секунды)
def millis():
  return int(round(time.time() * 1000))


def http_get(url):
  start_time = millis()
  result = {"url": url, "data": urlopen(url, timeout=5).read()[:100]}
  print(url," took ",str(millis() - start_time)," ms")
  return result

if __name__ == '__main__':
    pool = Pool(processes=1)

    start_time = millis()

    urls = ['http://www.google.com/', 'https://foursquare.com/', 'http://www.yahoo.com/', 'http://www.bing.com/',
            "https://www.yelp.com/"]
    results = pool.map(http_get, urls)

    print("\nTotal took ", str(millis() - start_time), " ms\n")
  • Вопрос задан
  • 913 просмотров
Пригласить эксперта
Ответы на вопрос 1
@asd111
Попробуйте pool = Pool(processes=5)
Здесь processes=5 это количество одновременных потоков, соответственно чем больше тем быстрее( в разумных пределах)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы