Простая программа на Python застряла - PullRequest
3 голосов
/ 10 марта 2012

Вчера я написал простую программу на Python (очень простую, как показано ниже) для проверки ответов HTTP-статуса около 5000 URL-адресов. Дело в том, что программа застревает на каждые 400-500 URL. Поскольку я действительно новичок в программировании, я понятия не имею, как отследить проблему.

Я добавил фрагмент «a = a + 1», чтобы отслеживать, сколько URL было обработано, когда он застрял.

Как я могу найти, в чем проблема? Большое спасибо 100

Я использую Ubuntu 11.10 и Python 2.7

#!/usr/bin/env python 
# -*- coding: utf-8 -*-

import httplib

raw_url_list = open ('url.txt', 'r')
url_list = raw_url_list.readlines()
result_file = open('result.txt', 'w')
a = 0

for url in url_list:
    url = url.strip()[23:]
    conn = httplib.HTTPConnection('www.123456789.cn')
    conn.request('HEAD', url)
    res = conn.getresponse()
    result_file.write('http://www.123456789.cn%s, %s, %s \n' % (url, res.status, res.reason))
    a = a + 1
    print a

raw_url_list.close()
result_file.close()

1 Ответ

3 голосов
/ 10 марта 2012

Вам нужно закрыть свои соединения после того, как вы закончите.Просто добавьте это в конец цикла for.

     conn.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...