Сравнить два объекта lxml.html

программирование python питон

Кто может сказать как их можно сравнить? Такое ощущение что операция сравнения не определена...

Есть функция которая скачивает страницу по ссылке. При попытке сделать:

if get_page(adress) != get_page(adress):
print('А какого фига!!!')

сообщение выводится всегда...


Примечание:
Функция get_page(url, num_page) скачивает через requests страницу топика форума url с номером num_page и возвращает полученный объект xml.html.

def get_page(self, num_page, cookies):
"""Получаем страницу топика"""

#Загружаем страницу в зависимости от номера.
# Там разная система формирования ссылок
if num_page == 1:
page_string = requests.get(self.SPF_PATH +
self.num_topic, cookies = cookies).text
else:
page_string = requests.get(self.SPF_PATH +
self.num_topic +
self.SPF_ADD_PATH +
str(num_page), cookies = cookies).text

#Если зашли как гость - значит куки устарели
if page_string.find("GroupTitle = 'Гость'") != -1:
raise CookiesOutdated
else:
#Убиваем часть тегов и возвращаем страницу
#Обработка результатов
page = lxml.html.document_fromstring(page_string)
return page

Примечание:
Кстааати... Счетчик обращений... Точно скорее всего он... Надо проверить...

Примечание:
Нет, проблема в этом есть, но все равно...

p = requests.get(url, cookies = login()).text
s = p
page1 = lxml.html.document_fromstring(p)
page2 = lxml.html.document_fromstring(s)
print(page1 == page2)
print(page1 != page2)

выводит False и True
Ответы:
Оператор == проверяет равенство значений. Интерпретатор выполняет проверку на равенство, рекурсивно сравнивая все вложенные объекты.
Если на веб-странице adress контент с каждым новым обращением меняется - то всё логично. Может там счетчик обращений?


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.