Как исправить повторяющиеся данные при использовании функции печати? - PullRequest
0 голосов
/ 19 июня 2020

Я работаю над проектом, из которого действительно очищаю данные. Я соскабливаю заголовок объявления о вакансии и название компании, разместившей объявление. Я понимаю название листинга, но названия компаний дублируются. Пожалуйста, дайте мне знать, что вызывает это и как я могу это исправить. Спасибо!

Вот мой текущий код:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep
from selenium.common.exceptions import NoSuchElementException


MAX_PAGE_NUM = 3
MAX_PAGE_DIG = 2

Data = []
text = "test"

driver = webdriver.Chrome("/Users/nzalle/Downloads/chromedriver")

for i in range (0, MAX_PAGE_NUM + 1):
    page_num = (MAX_PAGE_DIG - len(str(i))) * str(i) + "0"
    url = "https://www.indeed.com/jobs?q=EHS&l=Arizona&start=" + page_num



    Titles = driver.find_elements_by_xpath('//*[contains(concat( " ", @class, " " ), concat( " ", "jobtitle", " " ))]')

    for title in Titles:
        Data.append("Job Listing Titles:" + "\n")
        Data.append(title.text + "\n")

    CompanyNames = driver.find_elements_by_xpath('//*[contains(concat( " ", @class, " " ), concat( " ", "company", " " ))] | //*[contains(concat( " ", @class, " " ), concat( " ", "company", " " ))]//*[contains(concat( " ", @class, " " ), concat( " ", "turnstileLink", " " ))]')

    for companyname in CompanyNames:
        Data.append(companyname.text + "\n")

    print(*Data)

    driver.get(url)

driver.close()

1 Ответ

1 голос
/ 19 июня 2020

Заменить:

CompanyNames = driver.find_elements_by_xpath('//*[contains(concat( " ", @class, " " ), concat( " ", "company", " " ))] | //*[contains(concat( " ", @class, " " ), concat( " ", "company", " " ))]//*[contains(concat( " ", @class, " " ), concat( " ", "turnstileLink", " " ))]')

на:

CompanyNames = driver.find_elements_by_xpath('//*[contains(concat( " ", @class, " " ), concat( " ", "company", " " ))]//*[contains(concat( " ", @class, " " ), concat( " ", "turnstileLink", " " ))]')
...