Как собрать данные с нескольких веб-страниц в один список? - PullRequest
0 голосов
/ 20 июня 2020

Я работаю над проектом парсинга и ищу некоторые рекомендации по созданию списка из данных, которые я скопировал с нескольких разных страниц. В настоящее время я пытаюсь сделать это, составив список данных, но поскольку он находится в функции al oop, данные дублируются. Пожалуйста, дайте мне знать, как я могу собрать данные с разных страниц в один список. Спасибо!

Вот мой код:

from selenium import webdriver

page = 0
# SearchTerm = input("Search Term: ")
SearchTerm = "EHS"
# LocationSearch = input("Location: ")
LocationSearch = "Arizona"

NumPages = 4

url = ('https://www.indeed.com/jobs?q=' + SearchTerm + '&l=' + LocationSearch + '&start=0')

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

for x in range(NumPages + 1):
    url = ('https://www.indeed.com/jobs?q=' + SearchTerm + '&l=' + LocationSearch + '&start=' + str(page))
    page += 10
    # scrape code
    Titles = driver.find_elements_by_xpath('//*[contains(concat( " ", @class, " " ), concat( " ", "jobtitle", " " ))]')
    TitleText = [x.text for x in Titles]

    CompanyName = driver.find_elements_by_xpath('//*[contains(concat( " ", @class, " " ), concat( " ", "company", " " ))] | //*[contains(concat( " ", @class, " " ), concat( " ", "company", " " ))]//*[contains(concat( " ", @class, " " ), concat( " ", "turnstileLink", " " ))]')
    CompanyNameText = [x.text for x in CompanyName]

    info = [*TitleText, *CompanyNameText]

    print(*info)

    driver.get(url)

driver.close()
...