import time
from selenium import webdriver
# 声明一个类
class TaoBao(object):
    # 初始化时,传递要查询的关键词
    def __init__(self,keyword):

        self.keyword = keyworddef start_taobao(self):
        driver = webdriver.Firefox()
        # 2.打开淘宝网址
        driver.get('http://www.taobao.com')
        # 3.通过id找到输入框
        search_input = driver.find_element_by_id('q')
        # 4.输入搜索的关键词
        search_input.send_keys(self.keyword)
        # 5.通过class找到搜索按钮
        search_btn = driver.find_element_by_class_name('btn-search')
        # 6.点击搜索按钮
        search_btn.click()
        # 休眠2秒
        time.sleep(2)
        # 1.打开文件 encoding=utf-8 指定打开文件的字符编码
        file_handle = open('%s.txt' % self.keyword, 'w', encoding='utf-8')

        for x in range(1, 11):
            print('正在获取第%s页数据,请稍后......' % x)

            # for循环执行5次
            for x in range(1, 11, 2):
                # 休眠1秒
                time.sleep(1)
                # 把x转换小数
                j = x / 10
                # 拼接让浏览器滚动的js代码
                # %f float 类型数据占位符
                js = 'document.documentElement.scrollTop = document.documentElement.scrollHeight * %f' % j# 执行让浏览器滚动的js代码
                driver.execute_script(js)

            # 查找当前页所有的商品信息,返回的是一个列表
            # 电脑 鼠标 键盘 。。。。。 class_name填写 info-cont
            # 其他 class_name 填写 J_MouserOnverReq
            shops = driver.find_elements_by_class_name('J_MouserOnverReq')
            # 如果没有找到数据,换另外一种方式去找
            if len(shops) == 0:
                shops = driver.find_elements_by_class_name('info-cont')

            # for循环遍历列表,取出每一个商品的信息
            for shop in shops:
                # 2.写入文件商品信息
                file_handle.write(shop.text)
                file_handle.write('\n\n')
            # 找到下一页,点击
            # 找到li标签下一页
            next_li = driver.find_element_by_class_name('next')
            next_li.click()

        # 3.关闭文件
        # 退出浏览器
        driver.quit()

# 输出
# __name__ 值为 __main__ 表示是从当前文件直接运行的
# __name__ 值为 当前文件名  表示别的文件引用执行的
# 如果是从当前文件直接运行的,执行以下代码
if __name__ == '__main__':
    keyword = input('请输入关键词')
    tb = TaoBao(keyword)
    tb.start_taobao()

基于python的淘宝信息查询相关推荐

  1. 基于Python的淘宝行为数据可视化分析

    项目背景&总结: 项目背景 完成如下商业分析任务,通过数据分析和可视化展示,充分挖掘数据的价值,让数据更好地为业务服务: 流量分析:PV/UV是多少,通过分析PV/UV能发现什么规律? 漏斗分 ...

  2. 基于Python的淘宝自动回复助手

    前言 看到有人从blink上发需要用python做一个类似于淘宝自动回复助手的作业 好久没玩python了,就写了一下 实现了 1.退货 2.查库存 3.商品查看 这三个功能 整理一下心路历程 搞到一 ...

  3. 基于python实现淘宝协议秒杀程序

    前言: 最近太忙了,今天下午得空半小时更新一下博客.今天为大家带来的是某宝秒杀破解教程,因为双十一块到了,也是我最近写的一个小软件,这个协议请求的代码不会给的,但是web自动化的可以在我的github ...

  4. 基于python的手机号码归属信息查询系统

    import json import requests num = int(input('请输入你的手机号:')) url = 'http://apis.juhe.cn/mobile/get?phon ...

  5. 使用Java基于selenium实现淘宝秒杀自动化

    前言 无意在论坛刷到了基于Python实现淘宝秒杀的小demo,觉得挺有意思的,就用Python写了一下 # 淘宝清空购物车装置 import time# 新版的selenium和老版的有区别,坑死我 ...

  6. AJAX使用淘宝API查询手机归属地和运营商信息

    AJAX使用淘宝API查询手机归属地和运营商信息 使用给的api地址查询自己的手机号码所在地 地址: https://www.baifubao.com/callback?cmd=1059&ph ...

  7. selenium+chormdriver+python 实现淘宝的信息爬取

    因为我是个爬虫新手,所以对爬虫还不熟练,这几天想着自己做一个淘宝信息的自动爬取,一开始感觉比较简单,但做到了登录界面,发现一直被网站检测出来,不能滑动滑块.接下来从网上翻遍了资料,整理了以下自己的代码 ...

  8. python不登陆爬取淘宝数据_python登录并爬取淘宝信息代码示例

    本文主要分享关于python登录并爬取淘宝信息的相关代码,还是挺不错的,大家可以了解下. #!/usr/bin/env python # -*- coding:utf-8 -*- from selen ...

  9. 第一篇博客,python爬取淘宝信息

    python爬取淘宝信息 本人只是刚学python的菜鸟,代码不规范及需改进的地方请指教 我们直接看代码吧!哈哈 import requests from bs4 import BeautifulSo ...

最新文章

  1. Elasticsearch-01CentOS7单节点部署ES5.6.16
  2. mysql performance tuning_MySQL Performance tuning
  3. Lei Jun‘s first response to the
  4. 九九乘法表(Java)
  5. linux编码合适修改_CentOS升级Linux内核备忘录
  6. python 3全栈开发-面向对象之绑定方法(classmethod与staticmethod的区别)、多态、封装的特性property...
  7. HTTP权威指南阅读记录 - 第一章
  8. 冰点文库下载器,免积分下载百度文库文档
  9. 【自然语言处理】浅谈语料库
  10. 一款免费且强大的gif动画录制工具,再也不愁录动画!
  11. java超类_Java——超类和子类对象之间的转换
  12. 泛微OA-流程存储数据说明(表单主表+明细表)
  13. 读书寄语:这一年,谢谢自己
  14. 云栖大会压轴好戏 阿里云智能视频云专场划重点啦!
  15. java super extend 区别_Java泛型中extends和super的区别
  16. 修改谷歌浏览器缓存位置总结
  17. 二叉树前序遍历、中序遍历、后序遍历、层序遍历的直观理解
  18. 【07】函数调用:为什么会发生stack overflow?
  19. HDU 5405 (树链剖分+线段树)
  20. 第七章 C语言函数_什么是函数?C语言函数的概念

热门文章

  1. voyov3android系统,13.3寸超极本VOYO Vbook-V3体验
  2. 客运单位怎么利用自动化程序助力电商企业突出重围
  3. PIPI OJ 1118: 继续畅通工程(并查集+最小生成树)
  4. 淘淘商城-商城后台商品列表之商品编辑(商品管理-查询商品-编辑商品)
  5. v-show和v-if有什么区别 什么时候使用最好
  6. js垃圾回收机制的优化
  7. 微信小程序 刻度计/温度计组件(自用)
  8. Cocos3.x跟Cocos2.x的区别
  9. 1688开放平台WEB端授权教程
  10. catia73631234567890