# -*- coding: utf-8 -*-
from urllib2 import Request, urlopen, URLError
import codecs
FIREFOX_UBUNTU_UAS = 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:23.0) Gecko/20100101 Firefox/23.0'
def GetHttpSource(url, cookies='', user_agent=FIREFOX_UBUNTU_UAS):
req = Request(url)
req.add_header('User-Agent', user_agent)
req.add_header('Cookie', cookies)
try:
response = urlopen(req)
except URLError, e:
if hasattr(e, 'reason'):
print 'We failed to reach a server.'
print 'Reason: ', e.reason
elif hasattr(e, 'code'):
print 'The server couldn\'t fulfill the request.'
print 'Error code: ', e.code
return None
else:
return response.read()
IyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KCmZyb20gdXJsbGliMiBpbXBvcnQgUmVxdWVzdCwgdXJsb3BlbiwgVVJMRXJyb3IKaW1wb3J0IGNvZGVjcwoKRklSRUZPWF9VQlVOVFVfVUFTID0gJ01vemlsbGEvNS4wIChYMTE7IFVidW50dTsgTGludXggeDg2XzY0OyBydjoyMy4wKSBHZWNrby8yMDEwMDEwMSBGaXJlZm94LzIzLjAnCgpkZWYgR2V0SHR0cFNvdXJjZSh1cmwsIGNvb2tpZXM9JycsIHVzZXJfYWdlbnQ9RklSRUZPWF9VQlVOVFVfVUFTKToKICAgIHJlcSA9IFJlcXVlc3QodXJsKQogICAgcmVxLmFkZF9oZWFkZXIoJ1VzZXItQWdlbnQnLCB1c2VyX2FnZW50KQogICAgcmVxLmFkZF9oZWFkZXIoJ0Nvb2tpZScsIGNvb2tpZXMpCiAgICB0cnk6CiAgICAgICAgcmVzcG9uc2UgPSB1cmxvcGVuKHJlcSkKICAgIGV4Y2VwdCBVUkxFcnJvciwgZToKICAgICAgICBpZiBoYXNhdHRyKGUsICdyZWFzb24nKToKICAgICAgICAgICAgcHJpbnQgJ1dlIGZhaWxlZCB0byByZWFjaCBhIHNlcnZlci4nCiAgICAgICAgICAgIHByaW50ICdSZWFzb246ICcsIGUucmVhc29uCiAgICAgICAgZWxpZiBoYXNhdHRyKGUsICdjb2RlJyk6CiAgICAgICAgICAgIHByaW50ICdUaGUgc2VydmVyIGNvdWxkblwndCBmdWxmaWxsIHRoZSByZXF1ZXN0LicKICAgICAgICAgICAgcHJpbnQgJ0Vycm9yIGNvZGU6ICcsIGUuY29kZQogICAgICAgIHJldHVybiBOb25lCiAgICBlbHNlOgogICAgCXJldHVybiByZXNwb25zZS5yZWFkKCk=