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实现PS滤镜特效之扇形变换效果示例
Jan 26 Python
解决python opencv无法显示图片的问题
Oct 28 Python
Python实现正则表达式匹配任意的邮箱方法
Dec 20 Python
详解python--模拟轮盘抽奖游戏
Apr 12 Python
解决pycharm下os.system执行命令返回有中文乱码的问题
Jul 07 Python
python日志模块logbook使用方法
Sep 19 Python
Python接口测试文件上传实例解析
May 22 Python
使用已经得到的keras模型识别自己手写的数字方式
Jun 29 Python
django Model层常用验证器及自定义验证器详解
Jul 15 Python
python matlab库简单用法讲解
Dec 31 Python
只用40行Python代码就能写出pdf转word小工具
May 31 Python
python实现简单的三子棋游戏
Apr 28 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系统流量分析的程序
2006/10/09 PHP
PHP中实现中文字符进制转换原理分析
2011/12/06 PHP
php中函数前加&amp;符号的作用分解
2014/07/08 PHP
学习PHP session的传递方式
2016/06/15 PHP
ThinkPHP的SAE开发相关注意事项详解
2016/10/09 PHP
微信公众号OAuth2.0网页授权问题浅析
2017/01/21 PHP
YII2框架中excel表格导出的方法详解
2017/07/21 PHP
jQuery中$.fn的用法示例介绍
2013/11/05 Javascript
Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
2013/11/14 Javascript
js弹出层永远居中实现思路及代码
2013/11/29 Javascript
JS实现超炫网页烟花动画效果的方法
2015/03/02 Javascript
javascript中createElement的两种创建方式
2015/05/14 Javascript
浅谈js中的三种继承方式及其优缺点
2016/08/10 Javascript
基于Node的React图片上传组件实现实例代码
2017/05/10 Javascript
使用watch监听路由变化和watch监听对象的实例
2018/02/24 Javascript
Vue实现固定定位图标滑动隐藏效果
2019/05/30 Javascript
高效jQuery选择器的5个技巧实例分析
2019/11/26 jQuery
Python中的文件和目录操作实现代码
2011/03/13 Python
Python使用smtplib模块发送电子邮件的流程详解
2016/06/27 Python
django使用django-apscheduler 实现定时任务的例子
2019/07/20 Python
Python获取时间戳代码实例
2019/09/24 Python
Python如何在DataFrame增加数值
2020/02/14 Python
Python小白学习爬虫常用请求报头
2020/06/03 Python
html5将图片转换成base64的实例代码
2016/09/21 HTML / CSS
美国著名首饰网站:BaubleBar
2016/08/29 全球购物
全球知名提供各类营养保健品的零售商:Vitamin Shoppe
2016/10/09 全球购物
草莓网中国:StrawberryNet中国
2020/08/17 全球购物
AOP的定义以及作用
2013/09/08 面试题
Web Service面试题:如何搭建Axis2的开发环境
2012/06/20 面试题
财务副总经理工作职责
2013/11/25 职场文书
助理政工师申报材料
2014/06/03 职场文书
2014年科协工作总结
2014/12/09 职场文书
2016国庆节67周年红领巾广播稿
2015/12/18 职场文书
90条交通安全宣传标语
2019/10/12 职场文书
CSS极坐标的实例代码
2021/06/03 HTML / CSS
Spring Boot 的创建和运行示例代码详解
2022/07/23 Java/Android