Селен, как извлечь href и название метки Python? - PullRequest
1 голос
/ 14 апреля 2020

Я пытаюсь получить href и Promoname данных с

URL: https://www2.deloitte.com/global/en/pages/about-deloitte/topics/combating-covid-19-with-resilience.html?icid=covid-19_article-nav

enter image description here

Я попробовал приведенный ниже код, но могу извлечь только href из класса "promo-focus", но я также хочу получить COVID-19 Economic cases: Scenarios for business leaders из data-promoname

driver = webdriver.Chrome(executable_path=r'C:\chromedriver.exe')
url = "https://www2.deloitte.com/global/en/pages/about-deloitte/topics/combating-covid-19-with-resilience.html?icid=covid-19_article-nav"
driver.get(url)

for i in driver.find_elements_by_class_name('promo-focus'):
    print(i.get_attribute('href'))

Может кто-нибудь сказать мне, как это сделать, используя Python?

Ответы [ 2 ]

1 голос
/ 14 апреля 2020

Чтобы получить значение из data-promoname , вы можете сделать это, используя метод .get_attribute . Этот метод может использоваться для получения значения любого атрибута, соответствующего его тегу.

driver_path = 'C:/chromedriver.exe'  #the path to your chrome driver
browser = webdriver.Chrome(driver_path)
url_to_open = 'https://www2.deloitte.com/global/en/pages/about-deloitte/topics/combating-covid-19-with-resilience.html?icid=covid-19_article-nav'
browser.get(url_to_open)
for a in browser.find_elements_by_class_name('promo-focus'):
    print(a.get_attribute('href'))
    print(a.get_attribute("data-promoname"))

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

print(a.text)
1 голос
/ 14 апреля 2020

Попробуйте использовать текстовый метод для получения текста.

Пример

from selenium import webdriver

chrome_browser = webdriver.Chrome()
url = "https://www2.deloitte.com/global/en/pages/about-deloitte/topics/combating-covid-19-with-resilience.html?icid=covid-19_article-nav"
chrome_browser.get(url)
for a in chrome_browser.find_elements_by_class_name('promo-focus'):
    print(a.get_attribute('href'))
    print(a.text)

enter image description here

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