Я хочу создать DataFrame из списка, используя цикл for.Но только последнее значение добавляется в DataFrame.Нужно решение для этого.Я очень новичок в этой теме.просто пытаюсь решить личную проблему.
Я могу напечатать значения, которые мне нужны, с помощью приведенного ниже кода.Но когда я пытаюсь добавить эти значения в DataFrame, это только добавление последнего значения из списка.
import requests
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
import selenium.common.exceptions
import time
driver = webdriver.Chrome(executable_path='chromedriver')
catlink=['https://www.daraz.com.bd/small-kitchen-appliances/','https://www.daraz.com.bd/bedding-bath/']
for link in catlink:
driver.get(link)
time.sleep(10)
for i in range(0,8):
driver.find_element_by_xpath('//*[@id="root"]/div/div[2]/div[1]/div[1]/div/div[3]').click()
i+=i
elements = driver.find_elements_by_css_selector("div > div:nth-child(2) > div.c2xMr_ > div.ant-carousel > div > div.slick-list>* a")
for element in elements:
print(driver.title)
print(element.get_attribute("href"))
import pandas as pd
import requests
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
import selenium.common.exceptions
import time
driver = webdriver.Chrome(executable_path='chromedriver')
catlink=['https://www.daraz.com.bd/small-kitchen-appliances/','https://www.daraz.com.bd/bedding-bath/']
for link in catlink:
driver.get(link)
time.sleep(10)
for i in range(0,8):
try:
driver.find_element_by_xpath('//*[@id="root"]/div/div[2]/div[1]/div[1]/div/div[3]').click()
time.sleep(4)
i+=1
elements = driver.find_elements_by_css_selector("div > div:nth-child(2) > div.c2xMr_ > div.ant-carousel > div > div.slick-list>* a")
title=[]
# hreflink=[]
for element in elements:
title.append({'title':driver.title,'link':element.get_attribute("href")})
df=pd.DataFrame(title)
except (selenium.common.exceptions.NoSuchElementException):
NoBanner=list()
NoBanner.append(driver.title)
continue ```
I tried this but now showing the expected result.