【Python】抓取京东列表页商品信息(selenium)

分析


代码

# -*- coding: utf-8 -*-
import time
from selenium import webdriver
from bs4 import BeautifulSoup

url = "https://search.jd.com/Search?keyword=%E6%89%8B%E6%9C%BA&enc=utf-8&qrst=1&rt=1&stop=1&vt=2&wq=%E6%89%8B%E6%9C%BA&cid2=653&cid3=655&page=1&s=1&click=0"

driver = webdriver.Firefox()
driver.implicitly_wait(3)
driver.get(url)

# 模拟下滑到底部操作
for i in range(1, 5):
    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    time.sleep(1)

# 将加载好的页面源码给bs4解析
soup = BeautifulSoup(driver.page_source, "html.parser")

# 进行信息的抽取(商品名称,价格)
goods_info = soup.select(".gl-item")
for info in goods_info:
    title = info.select(".p-name.p-name-type-2 a")[0].text.strip()
    price = info.select(".p-price")[0].text.strip()
    print title
    print price

driver.close()

效果

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
你可以使用Selenium来爬取淘宝商品信息。下面是一个简单的示例代码,演示了如何使用SeleniumPython中进行淘宝商品信息爬取: ```python 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 # 设置Chrome浏览器的驱动路径 driver_path = 'path/to/chromedriver' # 初始化Chrome浏览器 options = webdriver.ChromeOptions() options.add_argument('--headless') # 无头模式,不显示浏览器界面 driver = webdriver.Chrome(executable_path=driver_path, options=options) # 打开淘宝商品面 driver.get('https://www.taobao.com/') # 定位搜索框并输入关键字 search_input = driver.find_element(By.CSS_SELECTOR, '#q') search_input.send_keys('商品关键字') # 点击搜索按钮 search_button = driver.find_element(By.CSS_SELECTOR, '.btn-search') search_button.click() # 等待搜索结果加载完成 WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, '.JIIxO.m-itemlist'))) # 解析搜索结果并提取商品信息 items = driver.find_elements(By.CSS_SELECTOR, '.JIIxO.m-itemlist .JIIxO.m-itemlist .JIIxO') for item in items: title = item.find_element(By.CSS_SELECTOR, '.title').text price = item.find_element(By.CSS_SELECTOR, '.price').text print(f'商品名称:{title},价格:{price}') # 关闭浏览器 driver.quit() ``` 请注意,这只是一个简单的示例代码,实际应用中可能需要更多的处理和错误处理。此外,淘宝网站有一些反爬虫机制,因此在实际使用时需要注意遵守相关规定,避免被封禁。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值