Я пытаюсь получить список ссылок, перебирая элементы, а затем щелкая по страницам. Я не уверен, как добавить каждый цикл в фрейм данных pandas после того, как он пройдет разбиение на страницы, показанное ниже, поэтому я могу вызвать фрейм данных вне цикла, чтобы перечислить все ссылки.
Он всегда перезаписывает и распечатывает последнюю строку.
while True:
links = [link.get_attribute('href') for link in driver.find_elements_by_class_name('view-detail-link')]
for link in links:
df_links = pd.DataFrame([[link]], columns=['link'])
try:
NextPage = driver.find_element_by_xpath('//a[@class = "ui-pagination-next ui-goto-page"]')
driver.execute_script("arguments[0].click();", NextPage)
time.sleep(3)
except NoSuchElementException:
break
print(df_links.link[0])






Вам нужно создать свой DataFrame вне цикла. Затем каждый раз, когда вы создаете новый DataFrame в цикле, вы добавляете его к основному:
df = pd.DataFrame()
while True:
links = [link.get_attribute('href') for link in driver.find_elements_by_class_name('view-detail-link')]
for link in links:
df_links = pd.DataFrame([[link]], columns=['link'])
df = df.append(df_links)
try:
NextPage = driver.find_element_by_xpath('//a[@class = "ui-pagination-next ui-goto-page"]')
driver.execute_script("arguments[0].click();", NextPage)
time.sleep(3)
except NoSuchElementException:
break
print(df.link[0])
Тоби, дайте мне знать, если вы можете ответить и на этот вопрос: [stackoverflow.com/questions/55192162/…
Этого следует избегать См. это решение Добавление фреймов данных в список, объединение одного в конце цикла