Перейти к содержимому

Фотография

AJAX Найти элемент


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 5

#1 TinderVinder

TinderVinder

    Новый участник

  • Members
  • Pip
  • 7 сообщений
  • ФИО:Круглов Михаил

Отправлено 13 декабря 2013 - 10:24

Всем хорошего дня! Вопрос поднимается здесь постоянно, все прочитал, мой нюанс не встречается (или я не понял).

Где:
_http://cars.[УДАЛИТЬ]mail.ru/sale/msk/new/mitsubishi/?gear_type=204

Найти:

<span class="link-brd link-brd_dotted">
<span class="link-brd__text">3 предложения</span>
в Москве<i class="ico ico_marg-l ico_toggle-l"></i>
</span>


import time
from selenium import webdriver

page = webdriver.Firefox()

try:
    page.get("http://cars.[УДАЛИТЬ]mail.ru/sale/msk/new/mitsubishi/?gear_type=204")
    time.sleep(20)
    for oElem in page.find_elements_by_css_selector("span[class='link-brd__text']"):
        sCaption = oElem.text
        if sCaption: print(sCaption + '\n')
finally: page.quit()

Нужные элементы не видит.

Python 3.3.2
SeleniumIDE с локатором

<td>css=span.link-brd__text</td>

работает корректно.

Огромное спасибо!
  • 0

#2 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 13 декабря 2013 - 11:27

А попробуйте xpath запрос
//div[@class='offer-card__contacts']//span[@class='link-brd__text']

или
css
div[class='offer-card__data'] span[class*='link-brd__text']
  • 1

#3 xRomanx

xRomanx

    Новый участник

  • Members
  • Pip
  • 42 сообщений
  • ФИО:Боев Роман

Отправлено 13 декабря 2013 - 13:32

Не силен в Python. Попробуйте после обращения к элементу поставить задурежку и убедиться вручную, что он действительно существует. page.find_elements_by_css_selector("span[class='link-brd__text']") - а почему нельзя изпользовать поиск по имени класса, вместо css селектора? (FindElementByClassName)
  • 1

#4 leftCh

leftCh

    Постоянный участник

  • Members
  • PipPipPip
  • 179 сообщений

Отправлено 20 декабря 2013 - 06:06

Элементы находятся, просто селениум по какой то причине не считывает внутренний текст. Возможно, селениум считает что элементы не видны, так как перекрываются другими элементами. Не знаю как исправить, я бы поискала обходной путь
  • 1

#5 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 13 января 2014 - 10:26

Не могу подтвердить, у меня этот сценарий корректно отработал, вывел на консоль


2 предложения

4 предложения

3 предложения

и так далее.

Какая версия Selenium установлена? Какая версия браузера?
  • 1
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#6 TinderVinder

TinderVinder

    Новый участник

  • Members
  • Pip
  • 7 сообщений
  • ФИО:Круглов Михаил

Отправлено 15 января 2014 - 13:58

Не могу подтвердить, у меня этот сценарий корректно отработал, вывел на консоль


2 предложения

4 предложения

3 предложения

и так далее.

Какая версия Selenium установлена? Какая версия браузера?


Сейчас действительно заработало, проверил в chrome.
Всем спасибо, получил полезные идеи и опыт.
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных