python selenium自动上传有赞单号的操作方法


Posted in Python onJuly 05, 2018

思路

1.将姓名和单号填入excel表格里面

python selenium自动上传有赞单号的操作方法

2.读取excel表格,将所有姓名存到ExeclName这个list中,单号存到ExeclId

3.selenium自动根据姓名搜索,点击发货

代码

# -- coding: utf-8 --
from selenium import webdriver
import timeimport xlwings as xw
from selenium.common.exceptions import NoSuchElementException
browser = webdriver.Chrome()
#输入有赞账号密码
def loginYouzan():
  browser.get('https://www.youzan.com/v2/trade/order#list&p=1&goods_title=&type=all&state=tosend&orderby=book_time&order_es_tag=&tuanId=&showBanner=false&ext_type=&order=desc&page_size=20&disable_express_type=')
  time.sleep(1)
  browser.find_element_by_name('mobile').send_keys("username")
  time.sleep(0.5)
  browser.find_element_by_name('password').send_keys("password")
#自动上传单号
def autoUploadId():
  wb = xw.Book('upload.xlsx')
  sht = xw.books['upload.xlsx'].sheets['Sheet1']
  ExeclId = sht.range('C2').expand('down') # 从excel获取id #从c2开始的底下所有列的值存到list rng1中
  ExeclName = sht.range('B2').expand('down') # 从excel中获取名字
  print(ExeclId.value)
  print(ExeclName.value)
  time.sleep(5)
  loginYouzan()
  time.sleep(5)
  redBg = browser.find_elements_by_class_name('dp-text')
  time.sleep(1)
  #redBg[1].click()
  redBg[0].click()
  time.sleep(1)
  #browser.find_element_by_name("order_label").find_elements_by_tag_name("option")[2].click()
  browser.find_element_by_name("order_label").find_elements_by_tag_name("option")[2].click()
  i = 0
  while i < len(ExeclName):
    time.sleep(2)
    browser.find_element_by_name('user_name').click()
    browser.find_element_by_name('user_name').clear()
    browser.find_element_by_name('user_name').send_keys(ExeclName[i].value) # 填入获取到的名字
    time.sleep(1)
    browser.find_element_by_link_text('筛选').click() # 点击筛选
    time.sleep(2)
    try:
      submit = browser.find_element_by_link_text('发 货')
      if submit.is_displayed():
        if submit.is_enabled():
          submit.click() # 点击发货
          time.sleep(3)
          browser.find_element_by_class_name('js-check-all').click()
          time.sleep(2)
          browser.find_element_by_name("express_id").find_elements_by_tag_name("option")[5].click()
          browser.find_element_by_name('express_no').send_keys(ExeclId[i].value) # 填入单号
          print("第" + str(i) + "个客户成功")
          print('姓名: ' + ExeclName[i].value + "单号: " + ExeclId[i].value)
          time.sleep(4)
          # browser.find_element_by_link_text('保存').click() #点击保存
          browser.find_element_by_link_text('×').click()
          #i = i + 1
          browser.find_element_by_name('user_name').clear()
      else:
        continue
    except NoSuchElementException as msg:
      print(msg)
    print("第" + str(i) + "个客户失败")
    i = i + 1
    print('姓名: ' + ExeclName[i].value + "单号: " + ExeclId[i].value)
    time.sleep(0.5)
def main():
  #writeDataToExcel()
  autoUploadId()
if __name__ == '__main__':
  main()

总结

以上所述是小编给大家介绍的python selenium自动上传有赞单号的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python+Opencv识别两张相似图片
Mar 23 Python
使用Turtle画正螺旋线的方法
Sep 22 Python
Django中的CBV和FBV示例介绍
Feb 25 Python
Python计算库numpy进行方差/标准方差/样本标准方差/协方差的计算
Dec 28 Python
Python Django 简单分页的实现代码解析
Aug 21 Python
详解Django配置JWT认证方式
May 09 Python
Python Json数据文件操作原理解析
May 09 Python
python实现简易版学生成绩管理系统
Jun 22 Python
Python sklearn中的.fit与.predict的用法说明
Jun 28 Python
Python insert() / append() 用法 Leetcode实战演示
Mar 31 Python
Python基础之字符串格式化详解
Apr 21 Python
解决Django transaction进行事务管理踩过的坑
Apr 24 Python
python实现爬取图书封面
Jul 05 #Python
Python定义二叉树及4种遍历方法实例详解
Jul 05 #Python
Python使用pyodbc访问数据库操作方法详解
Jul 05 #Python
如何优雅地处理Django中的favicon.ico图标详解
Jul 05 #Python
解决pandas中读取中文名称的csv文件报错的问题
Jul 04 #Python
解决Python pandas df 写入excel 出现的问题
Jul 04 #Python
python处理数据,存进hive表的方法
Jul 04 #Python
You might like
国外十大最流行的PHP框架排名
2013/07/04 PHP
php fsockopen解决办法 php实现多线程
2014/01/20 PHP
使用图灵api创建微信聊天机器人
2015/07/23 PHP
php+ajax+json 详解及实例代码
2016/12/12 PHP
2017年最好用的9个php开发工具推荐(超好用)
2017/10/23 PHP
php面试实现反射注入的详细方法
2019/09/30 PHP
tp5.1 框架数据库高级查询技巧实例总结
2020/05/25 PHP
jQuery 类twitter的文本字数限制带提示效果插件
2010/04/16 Javascript
基于jquery的商品展示放大镜
2010/08/07 Javascript
javascript实现可键盘控制的抽奖系统
2016/03/10 Javascript
原生javascript 学习之js变量全面了解
2016/07/14 Javascript
HTML Table 空白单元格补全的简单实现
2016/10/13 Javascript
js实现图片切换(动画版)
2016/12/25 Javascript
JS实现最简单的冒泡排序算法
2017/02/15 Javascript
基于Vue实现后台系统权限控制的示例代码
2017/08/29 Javascript
JS实现的找零张数最小问题示例
2017/11/28 Javascript
vue scroller返回页面记住滚动位置的实例代码
2018/01/29 Javascript
对vue里函数的调用顺序介绍
2018/03/17 Javascript
vue element table 表格请求后台排序的方法
2018/09/28 Javascript
JavaScript代码调试方法实例小结
2019/01/05 Javascript
微信小程序Echarts覆盖正常组件问题解决
2019/07/13 Javascript
JavaScript利用键盘码控制div移动
2020/03/19 Javascript
vue使用better-scroll实现滑动以及左右联动
2020/06/30 Javascript
微信小程序实现倒计时功能
2020/11/19 Javascript
[01:49]一目了然!DOTA2DotA快捷操作对比第二弹
2014/05/16 DOTA
Python解析excel文件存入sqlite数据库的方法
2016/11/15 Python
Sanic框架请求与响应实例分析
2018/07/16 Python
Django给admin添加Action的步骤详解
2019/05/01 Python
Python 使用xlwt模块将多行多列数据循环写入excel文档的操作
2020/11/10 Python
高级技校毕业生自荐信
2013/11/18 职场文书
送货司机岗位职责
2013/12/11 职场文书
党政领导班子群众路线对照检查材料思想汇报
2014/09/27 职场文书
2015年中学元旦晚会活动方案
2014/12/09 职场文书
企业党建工作总结2015
2015/05/26 职场文书
Java中常用解析工具jackson及fastjson的使用
2021/06/28 Java/Android
了解Kubernetes中的Service和Endpoint
2022/04/01 Servers