# Time 20180316-15:05
# QQ:934072160
from selenium import webdriver
from selenium.webdriver.common.keys import Keys #键盘事件引入keys包
import time
from selenium.webdriver.common.action_chains import ActionChains  #鼠标事件引入ActionChains包

# 注意:17行用户名、19行密码、25行活动名、55行活动链接均未参数化

driver = webdriver.Chrome()  #启动谷歌浏览器
driver.maximize_window()  #窗口最大化

#登录被测网站
driver.get("http://fronttest.huomanhao.com/go-login")
elem_user = driver.find_element_by_name("nick")
elem_user.send_keys("120918")
elem_pwd = driver.find_element_by_name("password")
elem_pwd.send_keys("a123456")
elem_pwd.send_keys(Keys.RETURN)
time.sleep(1)#搜索商品
elem_sou = driver.find_element_by_id("search_frame")
elem_sou.send_keys("发布10个关键词活动驳回测试")
elem_sou.send_keys(Keys.RETURN)
time.sleep(1)#关闭新人弹窗
elem_gtc = driver.find_element_by_xpath('/html/body/div[8]/div/div/div[2]/div[1]/span[4]')
ActionChains(driver).click(elem_gtc).perform()#检索商品页面点击[免费申请]按钮:敲黑板!!!选择元素右击->Copy->Copy Xpath,可以直接拷贝到xpath路径
elem_shen = driver.find_element_by_xpath('/html/body/div[8]/div/div/div[3]/ul/li/div/div/p[4]/a[2]')
ActionChains(driver).click(elem_shen).perform()
time.sleep(2)# 获取打开的多个窗口句柄;此时被测网站进入了一个新打开的窗口
windows = driver.window_handles
# 切换到当前最新打开的窗口,页面切换定位元素的这两行代码浪费我整天时间!!!
driver.switch_to.window(windows[-1])
time.sleep(2)#第二窗口点击[免费申请]按钮
driver.find_element_by_xpath('//*[@id="apply_now"]').click()
time.sleep(7)#点击[了解]按钮,申请商品
driver.find_element_by_xpath('//*[@id="guidestep_shopxqlink"]').click()
time.sleep(2)
#print('断点测试')

#提交活动链接
elem_tjlj = driver.find_element_by_xpath('//*[@id="auth_code1"]')
elem_tjlj.send_keys("https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-15716560240.3.4ffb22fbNrcGK8&id=19206211082")
time.sleep(2)
#点击[核对]按钮
driver.find_element_by_class_name('activityApply_checkBtn').click()
time.sleep(2)
#点击[加入购物车,下一步]按钮
driver.find_element_by_xpath('//*[@id="apply_for_link"]').click()
time.sleep(2)
#print('提交成功')


#退出当前页面
windows = driver.window_handles
driver.switch_to.window(windows[-1])
elem_tc = driver.find_element_by_class_name("back")
elem_tc.send_keys(Keys.RETURN)
driver.close()#退出被测网站首页
windows = driver.window_handles
driver.switch_to.window(windows[-1])
elem_tc2 = driver.find_element_by_class_name("back")
elem_tc2.send_keys(Keys.RETURN)
driver.close()
print('恭喜!申请成功!')

第一个python脚本(自动登录、申请活动、退出)相关推荐

  1. Windows和ubuntu使用python脚本自动登录校园网

    Windows和ubuntu使用python脚本自动登录校园网 背景: 事情事这样的: 最近拿着老板的服务器在玩,奈何学校没有找到合适的机房,无奈就搬回寝室放在一个无人问津的角落里,这科研条件让我也很 ...

  2. python 微信bot_我如何创建Python Bot自动登录到强制门户

    python 微信bot by Ritvik Khanna Ritvik Khanna着 我如何创建Python Bot自动登录到强制门户 (How I created a Python Bot to ...

  3. python生成yaml_使用python脚本自动生成K8S-YAML的方法示例

    1.生成 servie.yaml 1.1.yaml转json service模板yaml apiVersion: v1 kind: Service metadata: name: ${jarName} ...

  4. python生成yaml_使用python脚本自动生成K8S-YAML

    使用python脚本自动生成K8S-YAML 1.生成 servie.yaml 1.1.yaml转json service模板yaml apiVersion: v1 kind: Service met ...

  5. 如何使用python脚本自动解锁电脑屏幕

    1. 使用Python脚本自动解锁电脑屏幕,首先需要安装pywin32模块,这是一个Python模块,可以让Python脚本访问Windows API. 2. 然后,使用以下代码来解锁电脑屏幕: im ...

  6. 利用python爬虫自动登录人人网

    刚学python爬虫,使用python爬虫自动登录人人网,在运行代码时一直报错HTTPError /syshome urllib.error可以接收有urllib.request产生的异常.urlli ...

  7. python连接wifi_树莓派利用PYTHON脚本自动连接WIFI无线

    前言 树莓派3集成了无线WIFI以后我们就可以利用树莓派自身的WIFI模块来进行无线网络的连接,但是在平成的使用过程中我们发现无线WIFI因为环境复杂所以经常出现断网的现象.这次我们牛人技术就为大家介 ...

  8. python远程控制电脑_只需一个python脚本就可远程控制电脑,打开微信即可远程遥控操作...

    原标题:只需一个python脚本就可远程控制电脑,打开微信即可远程遥控操作 今天带给大家一个非常有意思的 python 程序,基于 itchat 实现微信控制电脑.你可以通过在微信发送命令,来拍摄当前 ...

  9. python从外部传入参数_从另一个Python脚本运行一个Python脚本,并传入参数 - python...

    我想从另一个Python脚本运行一个Python脚本.我想像使用命令行一样传递变量. 例如,我将运行我的第一个脚本,该脚本将遍历值列表(0.1.2.3),并将其传递给第二个脚本,依次为script2. ...

  10. python脚本中执行另一个脚本_如何用python调用另一个python脚本?

    如果想要将已经设置好的内容,在转移到另一个位置要怎么做呢?小编能写到的方法有,照抄,复制,以及转移使用.在我们日常办公上是非常好理解的,就是ctr v,但是如果想在编程上,将某一位置拿去到别的项目上使 ...

最新文章

  1. 查询数据,插入临时表
  2. ML之RF:基于RF算法实现案例(数据集samtrain.csv、samval.csv、samtest.csv)
  3. Spring Cloud(八)使用Zipkin进行分布式链路跟踪
  4. android 网络通信方式,Android中基于TCP协议的网络通信
  5. Codeforces 1004F Sonya and Bitwise OR (线段树)
  6. 深度学习和目标检测系列教程 15-300:在 Python 中使用 OpenCV 执行 YOLOv3 对象检测
  7. CRM lifecycle status
  8. php实现文本替换,php文本替换 函数 strtr()、str_repalce()
  9. linux下安装Python3.6.1
  10. 车牌识别 php,eoLinker-API_Shop_OCR-车牌识别_API接口_PHP调用示例代码
  11. win10任务栏图标空白的解决方案
  12. java项目开发——使用MAP和实体类作为参数的优缺点
  13. yytextview 复制_Swift iOS : YYText显示微博@文字的方法
  14. pdm怎么导入oracle,PowerDesigner导入导出PDM和rtf文件
  15. Shell脚本到底是什么高大上的技术吗?
  16. 非root用户安装命令
  17. Common Lisp 超规范(译文):5.数据和控制流
  18. 计算机网络中的层次结构
  19. 水利水电安全员考试问答练习题库(4)
  20. adobe cs5 indesign 不显示文本框_Adobe CS5 InDesign自动添加页码

热门文章

  1. CEF 入坑第二集 支持mp3,mp4
  2. 基于android手机群删联系人模块的设计与实现 论文,基于Android手机群删联系人模块的设计与实现...
  3. Android 编译 Rom 刷机
  4. KeyError: ‘Failed to format this callback filepath:~~~. Reason: \‘val_loss\‘
  5. JavaWeb基础-1.jQuery
  6. 【前端安全】Cookies
  7. Python获取系统时间
  8. 路过秋天版博客 V2.0 测试版发布 公测一周[支持多语言、多用户、多数据库、目录级URL]...
  9. 您的身边小助手--食谱
  10. 使用IDISPLAY_SetColor设置字体颜色的方法