Web Scraping L oop для страниц Dynami c - PullRequest
0 голосов
/ 08 марта 2020

Я пытаюсь почистить отзывы с этого сайта. Он начинается с показа только 3 отзывов, и каждый раз, когда вы нажимаете «показать больше отзывов», появляется еще 3 отзыва. Мне удалось сделать код, нажав на кнопку «показать больше отзывов», но когда я попытался распечатать отзывы после нажатия кнопки, я получил только первые 3 отзыва дважды. Как мне l oop сделать так, чтобы он продолжал нажимать и собирать новые отзывы до самого конца?

from selenium import webdriver
import pandas as pd
driver = webdriver.Chrome(executable_path=r'C:\Users\Sara Jitkresorn\AppData\Local\Programs\Python\Python37\Scripts\chromedriver\\chromedriver.exe')

driver.get("https://boxes.mysubscriptionaddiction.com/box/boxycharm?ratings=true#review-update-create")
df = pd.DataFrame()

review = driver.find_elements_by_class_name("comment-body")
for post in review:
    print(post.text)

driver.find_element_by_xpath('//*[@id="user-reviews"]/div[2]/div[1]/a').click()

driver.implicitly_wait(10)
review2 = driver.find_elements_by_class_name("comment-body")
for post in review2:
    print(post.text)

    temp_df = pd.DataFrame({'Reviews':review2})
    df = df.append(temp_df, sort=False).reset_index(drop=True)

df.to_csv('subsaddictTest01.csv', index=False, encoding='utf-8')
print ('excel done')

Это результат, который я получил из кода

I думаю, что Boxycharm в целом лучшая подписка красоты. Тем не менее, я думаю, что смешно, что если вы хотите обновить, вы должны заплатить 25 за первую коробку, а затем добавить дополнительные деньги, чтобы получить премию. Хотя это только один раз, это безумие. Так что около 80 баксов, просто чтобы переключиться на Преми ... читать дальше

Мне нравится получать ежемесячные коробки, просто wi sh они бы следовали моим предпочтениям в цветах!

Я привык действительно волнуюсь за мои коробки. Но не так больше. В этом месяце Fenty box выбора не хватает!

Я не клоун

Я думаю, что Boxycharm в целом - лучшая подписка красоты. Тем не менее, я думаю, что смешно, что если вы хотите обновить, вы должны заплатить 25 за первую коробку, а затем добавить дополнительные деньги, чтобы получить премию. Хотя это только один раз, это безумие. Так что около 80 баксов, чтобы переключиться на Premi ... читать дальше

Мне нравится получать ежемесячные ящики, просто wi sh они бы следовали моим предпочтениям по цветам!

Я привык действительно волнуюсь за мои коробки. Но не так больше. В этом месяце Fenty box выбора не хватает!

Я не клоун

Данные, собранные на листе Excel, также странные. Вот пример из одной из строк в Excel, сгенерированных этим кодом.

<selenium.webdriver.remote.webelement.WebElement (session="2ff48075e18712a7ffb62a1dc1a88ad1", element="487f7764-e4e4-40f6-81ec-bbf3a5bacce3")>

1 Ответ

0 голосов
/ 08 марта 2020

для Excel go через элементы этого списка, а затем используйте .text и для получения комментариев сначала создайте учетную запись и посмотрите, сможете ли вы получить доступ к этой ссылке

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