Я сделал простой скрипт python для доступа к веб-странице и входа в систему и извлечения данных из него, он работал на моей машине, используя как urllib/urllib2, так и mechanize.Получение urllib2 Разрешение отклонено при доступе к веб-странице https?
Таким образом, я хотел использовать этот скрипт на веб-сайте, чтобы любой пользователь мог заполнить свои учетные данные на моем сайте, и этот скрипт возьмет эти данные и заполнит другой веб-сайт.
Я использовал OpenShift.com как интернет-сервер питона и попробовал мой сценарий на него, он работал на всех сайтах, которые я попробовал (HTTP/HTTPS), но это дало ошибку с моей целевой веб-сайт, который:
urllib2.URLError: <urlopen error [Errno 13] Permission denied>
Полная ошибка: http://pastebin.com/73vTYEvu
Так что это действительно странно, что он работал отлично на моей машине под управлением Ubuntu 15.10, но это дает эту ошибку на сервере и только с моей целевой веб-сайт, и это очень простой веб-сайт (ссылка в сценарий ниже), я думаю, что это сайт специфический!
Я искал это в течение всего дня, я пробовал много способов, включая https-специфические подходы, но по-прежнему бесполезен.
Я не против изменений всего метода или сервера до тех пор, как она работает :)
Мой сценарий: (та часть, которая вызывает ошибку)
import urllib2
page = urllib2.urlopen('https://uos.sharjah.ac.ae:9050/prod_enUS/twbkwbis.P_WWWLogin')
print page.read()
это работает для меня. – felipsmartins
@felipsmartins он работал для меня локально, но он дает эту ошибку, когда я запускаю скрипт на сервере OpenShift. –
@ OmarEina хорошо ... в прошлом у меня была такая же проблема. Фактически, Openshift не позволяет подключаться к удаленным хостам вместе с портами, отличными от стандартного, из-за проблем SELINUX. Возможно, вы хотите выбрать Heroku. Посмотрите эту тему: https://github.com/guzzle/guzzle/issues/1001 – felipsmartins