ddvvc 发表于 2023-8-15 17:34

某宁购物网站数据爬取

from selenium import webdriver
import time
from selenium.webdriver.common.by import By
import csv

f = open('su//'+'suning5.csv', mode='a', encoding='utf-8', newline='')
writer = csv.writer(f)
writer.writerow(['价格', '标题', '链接', '评价', '店铺'])
# 打开chrome浏览器
driver = webdriver.Chrome()
# 打开网址
driver.get('https://search.suning.com/iphone14/')
driver.implicitly_wait(3)
# 滚动窗口
for page in range(2):
    driver.execute_script('document.querySelector("body > div.ng-footer > div.ng-s-footer").scrollIntoView()')
    time.sleep(2)
    # 提取数据
    divs = driver.find_elements(By.CSS_SELECTOR, '.product-box')
    for div in divs:
      price = div.find_element(By.CSS_SELECTOR, '.price-box').text
      title = div.find_element(By.CSS_SELECTOR, '.title-selling-point').text
      href = div.find_element(By.CSS_SELECTOR, '.title-selling-point a').get_attribute('href')
      evaluate = div.find_element(By.CSS_SELECTOR, '.info-evaluate').text
      store = div.find_element(By.CSS_SELECTOR, '.store-stock').text

      print(price, title, href, evaluate, store)
      # 保存数据
      writer.writerow()
      # 点击下一页
    driver.execute_script('document.querySelector("#nextPage").click()')
input()

xp7dai 发表于 2023-8-15 20:47

同问:
把地址换成别的是不是也可以用

知心 发表于 2023-8-15 20:48

hyts 发表于 2023-8-15 19:53
把地址换成别的是不是也可以用

应该是不行的。通过元素定位的,换了其他网站就定位不到了

YangPC 发表于 2023-8-15 21:15

hyts 发表于 2023-8-15 09:53
把地址换成别的是不是也可以用

肯定不行啊,每个网站的页面规则不一样

吖力锅 发表于 2023-8-15 21:28

自学的吗

zd53011 发表于 2023-8-16 08:21

同问,其他的行吗

jessylake 发表于 2023-8-16 08:44

ModuleNotFoundError: No module named 'selenium'
这还要建个模块才能运行吗?

skymxw 发表于 2023-8-16 08:53

jessylake 发表于 2023-8-16 08:44
ModuleNotFoundError: No module named 'selenium'
这还要建个模块才能运行吗?

安装模块,再导入

wangjiuye 发表于 2023-8-16 08:56

有没有大神说说这个东西怎么用呢 用什么软件啊。

wqf02 发表于 2023-8-16 10:07

使用se库太占用资源,能不能使用request,对这个网站直接请求?
页: [1] 2 3
查看完整版本: 某宁购物网站数据爬取