Извлечение данных из HTML после входа в страницу несоответствия - PullRequest
0 голосов
/ 29 октября 2019

Так что я не уверен, почему, но следующий код дает мне половину желаемых результатов

В первом случае мой оператор print дает мне то, что я ищу, а это "1-10 из 165".

Во втором случае я получаю " Нет результатов, основанных на ваших критериях поиска. Пожалуйста, измените их и выполните поиск снова. "

Самое смешное, HTMLна двух страницах результаты идентичны (кроме цифр). Таким образом, второй результат должен дать 1-10 из 599. Я также попытался удалить один из c.gets и попробовать их по отдельности. Если у меня будет только первое, я получу желаемый ответ. Если у меня есть только второй, я все равно получаю неправильный результат. Это, как говорится, я не верю, что их один за другим является причиной проблемы? Я включил изображение HTML ниже. Спасибо ..

мой код:

import requests
from bs4 import BeautifulSoup

with requests.session() as c:
    url = 'https://gcgeo.gc.ca/geonetwork/login/eng'
    url2 = 'https://gcgeo.gc.ca/geonetwork/srv/eng/doesntreallymatter1
    url3 = 'https://gcgeo.gc.ca/geonetwork/srv/eng/doesntreallymatter2

    USERNAME = 'username'
    PASSWORD = 'password'

    c.get(url)
    login_data = dict(username=USERNAME, password=PASSWORD)
    c.post(url, data=login_data)

    response = c.get(url2)
    soup = BeautifulSoup(response.content, 'html.parser')
    search = (soup.find('strong').get_text())

    response2 = c.get(url3)
    soup2 = BeautifulSoup(response2.content, 'html.parser')
    search2 = (soup2.find('strong').get_text())

    print search
    print search2

HTML в файле:

enter image description here

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...