Я пытаюсь удалить из вакансий следующее: должность, название компании, местоположение и LinkToApply. Тем не менее, я запускаю следующий код, и он по какой-то причине не получает CompanyName. Как только я снимаю часть кода: "comp = driver.find_element_by_class_name ('job-show-team-name'). Text" из кода, программа работает нормально.
import pandas as pd
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome('/Users/user/Downloads/chromedriver_win32/chromedriver')
driver.get('https://dribbble.com/jobs')
assert 'Dribbble' in driver.title
total_web = []
elements=driver.find_elements_by_class_name("job-board-job-title")
quotes = len(elements)
for quote in range(5):
try:
#Added this line to avoid stale which re-assigned the element again.
elements = driver.find_elements_by_class_name("job-board-job-title")
elements[quote].click()
for a in driver.find_elements_by_xpath("//*[@id='content']/div[3]/div[1]/div[1]/div/a"):
website = a.get_attribute('href')
title = driver.find_element_by_class_name('job-show-title').text
comp = driver.find_element_by_class_name('job-show-team-name').text
loc = driver.find_element_by_class_name('d-inline-block').text
driver.back()
new1 = ((title, loc, comp, website))
total_web.append(new1)
except:
break
df_web = pd.DataFrame(total_web,columns=['title', 'loc', 'comp', 'website'])
driver.close()