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 相关文章推荐
Python3指定路径寻找符合匹配模式文件
May 22 Python
使用Python的Twisted框架编写非阻塞程序的代码示例
May 25 Python
Python编程实现的图片识别功能示例
Aug 03 Python
Python基于贪心算法解决背包问题示例
Nov 27 Python
Python实现多进程共享数据的方法分析
Dec 04 Python
Python(Django)项目与Apache的管理交互的方法
May 16 Python
python在html中插入简单的代码并加上时间戳的方法
Oct 16 Python
华为校园招聘上机笔试题 扑克牌大小(python)
Apr 22 Python
python 在某.py文件中调用其他.py内的函数的方法
Jun 25 Python
Python协程操作之gevent(yield阻塞,greenlet),协程实现多任务(有规律的交替协作执行)用法详解
Oct 14 Python
TensorFlow——Checkpoint为模型添加检查点的实例
Jan 21 Python
ffmpeg+Python实现B站MP4格式音频与视频的合并示例代码
Oct 21 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 大数据量及海量数据处理算法总结
2011/05/07 PHP
php读取文件内容的三种可行方法示例介绍
2014/02/08 PHP
利用PHP生成静态html页面的原理
2016/09/30 PHP
PHP使用redis消息队列发布微博的方法示例
2017/06/22 PHP
thinkPHP5实现的查询数据库并返回json数据实例
2017/10/23 PHP
thinkphp5框架路由原理与用法详解
2020/02/11 PHP
JavaScript立即执行函数的三种不同写法
2014/09/05 Javascript
javascript实现表单提交后,提交按钮不可用的方法
2015/04/18 Javascript
JavaScript解析JSON格式数据的方法示例
2017/01/24 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(1)
2017/02/20 Javascript
vue2.0 element-ui中el-select选择器无法显示选中的内容(解决方法)
2018/08/24 Javascript
vue2.0获取鼠标位置的方法
2018/09/13 Javascript
实现Vue的markdown文档可以在线运行的方法示例
2018/12/11 Javascript
node中实现删除目录的几种方法
2019/06/24 Javascript
微信小程序实现上传图片裁剪图片过程解析
2019/08/22 Javascript
微信小程序 获取手机号 JavaScript解密示例代码详解
2020/05/14 Javascript
[01:05:56]Liquid vs VP Supermajor决赛 BO 第二场 6.10
2018/07/04 DOTA
详细讲解Python中的文件I/O操作
2015/05/24 Python
Python中基本的日期时间处理的学习教程
2015/10/16 Python
Python cookbook(数据结构与算法)保存最后N个元素的方法
2018/02/13 Python
使用python实现http及ftp服务进行数据传输的方法
2018/10/26 Python
python实现淘宝秒杀脚本
2020/06/23 Python
解决python Markdown模块乱码的问题
2019/02/14 Python
kali中python版本的切换方法
2019/07/11 Python
Python 使用 Pillow 模块给图片添加文字水印的方法
2019/08/30 Python
html5 Canvas画图教程(5)—canvas里画曲线之arc方法
2013/01/09 HTML / CSS
Java提供了哪些企业应用编程接口
2015/02/13 面试题
C#里面如何倒序排列一个数组的元素?
2013/06/21 面试题
Unix控制后台进程都有哪些进程
2016/09/22 面试题
小学生十佳少年事迹材料
2014/08/20 职场文书
本科毕业论文指导教师评语
2014/12/30 职场文书
地道战观后感300字
2015/06/04 职场文书
2015年学校政教工作总结
2015/07/20 职场文书
机关单位2016年法制宣传日活动总结
2016/04/01 职场文书
使用pipenv管理python虚拟环境的全过程
2021/09/25 Python
Tomcat starup.bat 脚本实现开机自启动
2022/04/20 Servers