【发布时间】:2022-01-29 01:37:55
【问题描述】:
使用 Beautifulsoup 删除所有产品的所有信息。但我的代码只返回第一个产品信息。此外,当我在 find 元素的末尾添加 .text 时,它返回 noneType
options = ChromeOptions()
options.add_argument("headless")
driver=chrome(executable_path="/AppData/Local/Programs/Python/Driver/chromedriver_win32/chromedriver.exe")
driver.get("https://www.adiglobaldistribution.us/MyAccount/signin")# here change your link
driver.maximize_window()
time.sleep(5)
wait=WebDriverWait(driver,10)
data_adi = []
n=0
for n in range(12):
pages_url = f"https://www.adiglobaldistribution.us/search?page={n+1}&criteria=Tp-link%20Usa%20Corporation"
driver.get(pages_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, '[class="rd-thumb-details-price"]')))
time.sleep(5)
html = driver.page_source
soup = Soup(html)
for item in soup.select("div", class_='[class="rd-thumb-details-price"]'):
data_adi.append({
'title' : item.find("span", class_="rd-item-name"),
'name' : item.find("span", class_='item-num-mfg'),
'link' : item.find("div", class_="rd-item-name", href=True),
'price' : item.find("div", class_="pdp-price-wrapper"),
'stock' : item.find("span", class_="availabilityMessage-rd")
})
df_adi = pd.DataFrame(data_adi)
df_adi.drop_duplicates()
df_adi
结果
【问题讨论】:
标签: python-3.x web-scraping beautifulsoup nonetype