У меня есть Perl-программа, которая извлекает данные из базы данных моей университетской библиотеки, и она работает хорошо.Теперь я хочу переписать его на python, но столкнулся с проблемой <urlopen error [errno 104] connection reset by peer>
Код perl:
my $ua = LWP::UserAgent->new;
$ua->cookie_jar( HTTP::Cookies->new() );
$ua->timeout(30);
$ua->env_proxy;
my $response = $ua->get($url);
Код Python, который я написал:
cj = CookieJar();
request = urllib2.Request(url); # url: target web page
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj));
opener = urllib2.install_opener(opener);
data = urllib2.urlopen(request);
Я использую VPN (виртуальную частную сеть) для входа в библиотеку моего университета дома, и я попробовал и код perl, и код python.Код Perl работает, как я и ожидал, но код Python всегда сталкивался с «ошибкой urlopen».
Я погуглил проблему, и кажется, что urllib2 не может загрузить прокси-сервер среды.Но согласно документу urllib2, функция urlopen () прозрачно работает с прокси, которые не требуют аутентификации.Теперь я чувствую себя довольно запутанным.Кто-нибудь может мне помочь с этой проблемой?