Невозможно сканировать сайт с Selenium в python (без ошибок, но не сработало) - PullRequest
0 голосов
/ 08 ноября 2019

Я пытаюсь отсканировать комментарии по ссылке: http://www.phimmoi.net/phim/the-gioi-phep-mau-i1-6113/xem-phim.html. Это код, который я использовал:

find_comment = browser.find_elements_by_css_selector("div[class='_3-8y _5nz1 clearfix']")
for i in find_comment:
    element_comment = i.find_element_by_css_selector("span[class='_5mdd']")
    print(element_comment.text)

Но ничего не произошло: никаких ошибок, никаких исключений и ничего не было напечатано.

Ползла ли блокировка сайта? Если да, пожалуйста, помогите мне, как узнать.

Ответы [ 2 ]

1 голос
/ 08 ноября 2019

Комментарии на веб-сайте, который вы разместили, находятся в iframe, поэтому вам нужно будет переключиться на iframe, прежде чем вы сможете найти комментарии.

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


# first switch to the iframe
WebDriverWait(browser, 10).until(
        EC.frame_to_be_available_and_switch_to_it((By.XPATH, "//iframe[contains(@title, 'fb:comments')]")))

# then get comments
comments_list = browser.find_elements_by_xpath("//span[@class='_5mdd']/span")

# iterate the comments
for comment in comments_list:

    # print the comment text element -- the span which contains the commment text
    print(comment.text)

0 голосов
/ 08 ноября 2019
find_comment = browser.find_elements_by_css_selector("._3-8y _5nz1 clearfix")
for i in read_more:
    element_comment = i.find_element_by_css_selector("._5mdd")
    print(element_comment.text)

Ссылка:
https://selenium -python.readthedocs.io / api.html # selenium.webdriver.remote.webdriver.WebDriver.find_elements_by_css_selector

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