проблема со соскабливанием красивым супом и селеном с использованием python - PullRequest
0 голосов
/ 28 мая 2020

Я пытаюсь попрактиковаться в использовании селена / BS4, и ive столкнулся с проблемой.

мой код здесь ссылка на код

в основном я пытаюсь получить URL from:

`'class':'td_text_highlight_marker_green td_text_highlight_marker'`

но всякий раз, когда я запускаю скрипт, возвращаемое количество ссылок всегда разное.

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

пожалуйста, помогите :)

1 Ответ

1 голос
/ 28 мая 2020

DOM веб-страницы не загружается полностью вовремя для вашего поиска. Итак, чтобы убедиться, что span действительно присутствует, прежде чем вы начнете искать его с помощью BeautifulSoup, добавьте WebDriverWait.

for coupon_url in coupon_url_list:
    driver.get(coupon_url)
    WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, "//span[@class='td_text_highlight_marker_green td_text_highlight_marker']")))
    content = driver.page_source
    # rest of your code here
...