Тип URL не распознается при извлечении с помощью механизации - Python 2.7 - PullRequest
0 голосов
/ 24 сентября 2018

Я пытаюсь подключиться к веб-сайту с Python 2.7 с помощью библиотеки механизации, заполнить форму и получить информацию на странице результатов несколько тысяч раз, и у меня возникли некоторые проблемы.

Вот мой код

import mechanize
import os
import ssl

# needed to connect to website
if (not os.environ.get('PYTHONHTTPSVERIFY', '') and
    getattr(ssl, '_create_unverified_context', None)):
    ssl._create_default_https_context = ssl._create_unverified_context

# Access page
home_page = mechanize.Browser()
home_page.open("https://www.sae-diffusion.sante.gouv.fr/sae-diffusion/recherche.htm")

# set form values
home_page.form = list(home_page.forms())[0]
hospital = home_page.find_control(name="etablissementSelected", type="select").value = ["129076"]
data_sheet = home_page.find_control(name="bordereauSelected", type="select").value = ["357"]

# submit form
home_page.submit()

Когда я запускаю его, я получаю

Traceback (most recent call last):
  File "C:/Users/Sam/PycharmProjects/form_filling_py2/Test 1.0.py", line 20, in <module>
    home_page.submit()
  File "C:\Users\Sam\PycharmProjects\form_filling_py2\venv\lib\site-packages\mechanize\_mechanize.py", line 684, in submit
    return self.open(self.click(*args, **kwds))
  File "C:\Users\Sam\PycharmProjects\form_filling_py2\venv\lib\site-packages\mechanize\_mechanize.py", line 675, in click
    return self._add_referer_header(request)
  File "C:\Users\Sam\PycharmProjects\form_filling_py2\venv\lib\site-packages\mechanize\_mechanize.py", line 205, in _add_referer_header
    scheme = request.get_type()
  File "C:\Users\Sam\PycharmProjects\form_filling_py2\venv\lib\site-packages\mechanize\_urllib2_fork.py", line 188, in get_type
    raise ValueError("unknown url type: %s" % self.__original)
ValueError: unknown url type: recherche.htm

, но я не понимаю, почему тип URL-адреса "recherche.htm", я думаю, это должно либобыть "htm" или "https".Есть ли у вас какие-либо объяснения / решения, которые могут мне помочь?

...