Python Selenium: альтернатива форматированию строк для списков? - PullRequest
0 голосов
/ 30 марта 2020

Я пытаюсь взять значение из входа и поместить его в функцию browser.find_elements_by_xpath("//div[@class='v1Nh3 kIKUG _bz0w']"). Тем не менее, форматирование строки, безусловно, не работает, так как это список, поэтому он выбрасывает AttributeError.

Кто-нибудь знает какие-либо альтернативы для использования со списками (возможно, без итерации по каждому файлу)?

xpath_to_links = input('Enter the xpath to links: ')
posts = browser.find_elements_by_xpath("//div[@class='{}']").format(devops)

AttributeError: 'list' object has no attribute 'format'

1 Ответ

1 голос
/ 30 марта 2020

Похоже, что причина ошибки в том, что вы помещаете функцию форматирования в неправильное место, поэтому вместо работы со строкой "//div[@class='{}']" вы вызываете ее для списка, возвращаемого find_elements_by_xpath. Не могли бы вы попробовать заменить ваш код одной из следующих строк?

posts = browser.find_elements_by_xpath("//div[@class='{}']".format(devops))
posts = browser.find_elements_by_xpath(f"//div[@class='{devops}']")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...