Цикл по серии веб-элементов с общим именем класса - PullRequest
0 голосов
/ 30 октября 2019

Я пишу код для следующих действий, используя python и selenium:

1.go для Google Maps и поиска в ресторанах Лондона

2.нажмите первый ресторан, чтобы просмотреть подробную информацию изатем вернитесь на предыдущую страницу и нажмите на следующий ресторан (i, i + 1, i + 2 и т. д.)

Обратите внимание, что на всех страницах кликов в ресторане есть общие названия классов (являющиеся 'разделом-результатом')

однако, когда я запускаю код, по какой-то причине водитель не нажимает на ресторан, чтобыперейдите на страницу сведений.

Я попробовал следующий код, который также был предложен в другом сообщении на форуме для решения этой проблемы. Однако пока безуспешно.

также я попытался сделать цикл for, который я также включил в раздел кода как (вариант 2)

from selenium import webdriver
import random
import time
import pandas as pd
driver=webdriver.Chrome(executable_path="C:/users/usr/Desktop/chromedriver.exe")


UrlA = "https://www.google.com/maps/search/"
UrlB= "London"
UrlC="Restaurant"
UrlD= UrlA + UrlB + '+' + UrlC
driver.get("http://www.google.com/ncr") #to load page in english language
driver.get(UrlD)



time.sleep(2)
driver.maximize_window()

elements = driver.find_elements_by_class_name('section-result')

Вариант 1:

for i in elements:
    i.click()
    driver.back()

Вариант 2:

for i in range (1,20):
    elements[i].click
    driver.back

строка кода (точечный щелчок) не отвечает и вместо этого возвращается на предыдущую страницу. Посоветуйте пожалуйста правильную модификацию для кода

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