код цикла не работает, поскольку он продолжает выдавать ошибки - PullRequest
0 голосов
/ 13 октября 2018

Так, как кто-то предложил в предыдущем посте к этой проблеме, я отступил все на четыре пробела, так как код, который я использую, был создан другим пользователем, и я копирую и вставляю, чтобы сохранитьотступы.Я также попытался сохранить исходный код в py-файле перед выполнением, как кто-то другой предложил, и я все еще получаю ошибки, вставленные ниже в нижней части кода.

def races(main_url):
    driver = webdriver.Chrome()
    driver.get(main_url)
    driver.implicitly_wait(2)

    races = driver.find_elements_by_class_name('time-location')
    races = [race.text[:5] for race in races]
    races = [race.replace(':', '') for race in races]

    driver.close()

    return races

def scrape(url):
    driver = webdriver.Chrome()
    driver.get(url)
    driver.implicitly_wait(2)
    driver.find_elements_by_class_name('racecard-ajax-link')[1].click()

    WebDriverWait(driver,5).until(expected_conditions.presence_of_element_located((By.XPATH, '//* [@id="tab-racecard-sectional-times"]/div/div[1]/div[1]/div[2]/div/button')))

    for horse in driver.find_elements_by_class_name('card-item'):
        horseName = horse.find_element_by_class_name('form-link').text
        times = horse.find_elements_by_class_name('sectionals-time')
        times = [time.text for time in times]
        print('{}: {}'.format(horseName, times))
    print()

    driver.close()

def main():
    date = '6-October-2018'
    main_url = 'http://www.attheraces.com/racecard/Wolverhampton/' + date
    for race in races(main_url):
        url = main_url + '/' + race
        print(url)
        scrape(url)

if __name__ == '__main__':
    main()

Трассировка (последний последний вызов): файл "C: \ Users \ djcro \ AppData \ Local \ Programs \ Python \ Python37-32 \ testing1.py", строка 40, в main ()Файл "C: \ Users \ djcro \ AppData \ Local \ Programs \ Python \ Python37-32 \ testing1.py", строка 34, в основном для гонок в гонках (main_url): Файл "C: \ Users \ djcro \ AppData \Local \ Programs \ Python \ Python37-32 \ testing1.py ", строка 2, в гонках driver = webdriver.Chrome () NameError: имя 'webdriver' не определено

Ответы [ 2 ]

0 голосов
/ 14 октября 2018

driver = webdriver.Chrome () - это неверно.

Вам необходимо передать исполняемый файл драйвера chrome, как показано ниже

driver = webdriver.Chrome ("/ path / of / the/ хром / водитель / исполняемый ")

0 голосов
/ 13 октября 2018

Похоже, вы забыли добавить "из веб-драйвера импорта селена", предполагая, что вы используете селен.

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