千家信息网

Python中怎么使用selenium爬取淘宝商品信息

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本篇内容主要讲解"Python中怎么使用selenium爬取淘宝商品信息",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Python中怎么使用seleniu
千家信息网最后更新 2026年10月31日Python中怎么使用selenium爬取淘宝商品信息

本篇内容主要讲解"Python中怎么使用selenium爬取淘宝商品信息",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Python中怎么使用selenium爬取淘宝商品信息"吧!

具体代码如下:

# encoding=utf-8__author__ = 'Jonny'__location__ = '西安'__date__ = '2018-05-14''''需要的基本开发库文件:requests,pymongo,pyquery,selenium开发流程:  搜索关键字:利用selenium驱动浏览器搜索关键字,得到查询后的商品列表  分析页码并翻页:得到商品页码数,模拟翻页,得到后续页面的商品列表  分析提取商品内容:利用PyQuery分析页面源代码,解析获得商品列表信息  存储到MongDB中:将商品的信息列表存储到数据库MongoDB。'''import requestsfrom selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.common.exceptions import TimeoutExceptionfrom pyquery import PyQuery as pqimport pymongoimport reimport timebrowser = webdriver.Chrome()wait = WebDriverWait(browser,10)client = pymongo.MongoClient('localhost',27017)mongo = client['taobao']def searcher():  url = 'https://www.taobao.com/'  browser.get(url=url)  try:    #判断页面加载是够成功,设置等待时间    #判断位置1:搜索输入框是否加载完成    input_kw = wait.until(      EC.presence_of_element_located((By.CSS_SELECTOR, '#q'))    )    #判断位置2:搜索输入框对应的搜索按键是否加载完成    submit = wait.until(EC.element_to_be_clickable(      (By.CSS_SELECTOR,'#J_TSearchForm > div.search-button > button'))    )    input_kw.send_keys('男装')    submit.click()    #等待页面加载完成,便于准确判断网页的总页数    page_counts = wait.until(      EC.presence_of_element_located(        (By.CSS_SELECTOR,'#mainsrp-pager > div > div > div > div.total'))    )    parse_page()    return page_counts.text  except TimeoutException as e:    print(e.args)    return searcher()#实现翻页def next_page(page_number):  try:    # 判断页面加载是够成功,设置等待时间    # 判断位置1:页面跳转输入页是否加载完成    input_page = wait.until(      EC.presence_of_element_located((By.CSS_SELECTOR, '#mainsrp-pager > div > div > div > div.form > input'))    )    # 判断位置2:确认按键是否加载完成    submit = wait.until(EC.element_to_be_clickable(      (By.CSS_SELECTOR, '#mainsrp-pager > div > div > div > div.form > span.btn.J_Submit'))    )    input_page.send_keys(page_number)    submit.click()    #判断翻页是否成功    wait.until(EC.text_to_be_present_in_element(      (By.CSS_SELECTOR,'#mainsrp-pager > div > div > div > ul > li.item.active'),str(page_number))    )    parse_page()  except TimeoutException as e:    print(e.args)    next_page(page_number)#对页面进行数据处理def parse_page():  # wait.until(EC.presence_of_element_located(By.CSS_SELECTOR,'#mainsrp-itemlist > div > div'))  wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '#mainsrp-itemlist .items .item')))  html = browser.page_source  doc = pq(html)  items = doc('#mainsrp-itemlist .items .item').items()  for item in items:    goods = {      'image':item.find('.pic .img').attr('src'),      'price':item.find('.price').text(),      'deal':item.find('.deal-cnt').text()[:-3],      'title':item.find('.title').text(),      'shop':item.find('.shop').text(),      'location':item.find('.location').text()    }    print(goods)    data_storage(goods)#将数据存入数据库def data_storage(goods):  try:    if mongo['mongo_sheet'].insert(goods):      print('Successfully storage!')  except Exception as e:    print('failedly storage!',goods)def main():  text = searcher()  print(text)  #获取总页数  pages = int(re.compile('(\d+)').search(text).group(0))  print(pages)  for i in range(2,pages+1):    next_page(i)  browser.close()if __name__ == '__main__':  main()

到此,相信大家对"Python中怎么使用selenium爬取淘宝商品信息"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

商品 页面 信息 搜索 位置 数据 淘宝 成功 内容 分析 输入 关键 关键字 按键 数据库 时间 页数 页码 存储 学习 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 河南云网互联网络科技有限公司 深圳恒合互联网络科技有限公司 合肥互联网科技公司 山东吉时兔互联网科技有限公司 汉立互联网科技有限公司联系电话 济南和联互联网科技有限公司 湖南洣水互联网科技有限公司扣款 云创客互联网科技公司 北京大学互联网科技怎么样 来此购互联网科技有限公司 重庆互联网医院沙龙医盟信息科技 彤创互联网科技有限公司 江阴互联网智能科技产品进口 注册互联网科技公司经营范围大全 想开互联网科技公司怎么样 浙南科技城互联网大厦建设工程 互联网公司黑科技创始人 区块链结合互联网科技 银行科技岗属于互联网吗 黑云互联网科技有限公司 互联网科技公司简介 互联网科技公司经营范围 智能科技公司是互联网公司吗 杭州互联网科技公司 掌上梦互联网科技 广西拼得多互联网科技有限公司 厦门千工互联网科技有限公司 华夏互联网科技业 科技互联网的核心竞争力 深圳无忧互联网科技
0