Я использую urllib2
, чтобы открыть и сохранить веб-страницу. Однако часто загружается только часть веб-страницы, а иногда загружается полная страница.
import urllib2
import time
import numpy as np
from itertools import izip
outFiles = ["outFile1.html", "outFile2.html", "outFile3.html", "outFile4.html"]
urls=["http://www.guardian.co.uk/commentisfree/2011/sep/06/cameron-nhs-bill-parliament?commentpage=all",
"http://www.guardian.co.uk/commentisfree/2011/sep/06/tory-scotland-conservative-murdo-fraser?commentpage=all",
"http://www.guardian.co.uk/commentisfree/2011/sep/06/palestine-statehood-united-nations?commentpage=all",
"http://www.guardian.co.uk/commentisfree/2011/sep/05/in-praise-of-understanding-riots?commentpage=all"]
opener = urllib2.build_opener()
user_agent = 'Mozilla/5.0 (Ubuntu; X11; Linux x86_64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1'
opener.addheaders = [('User-agent', user_agent)]
urllib2.install_opener(opener)
for fileName, url in izip(outFiles,urls):
response = urllib2.urlopen(url)
responseBody = response.read()
fp=open(fileName,'w')
fp.write(responseBody)
fp.close()
time.sleep(np.random.randint(20,40))
В зависимости от серии, outputFile.html
имеют разный размер. Иногда файлы имеют размер> 200 КБ до 1 МБ, тогда как в другой раз они составляют около 140 КБ. Что может привести к этой разнице?
Когда файлы меньше, раздел комментариев отсутствует, однако файл никогда не бывает неполным. Иногда вся страница, включая комментарии, также загружается. Я проверил с curl
и все еще имел подобную проблему. Что я не понимаю, так это то, что может привести к этому несоответствию.