selenium自动新增店铺
说明:仅作为参考练习,代码中涉及数据均为测试数据。
from selenium import webdriver
from selenium.webdriver import ActionChains
# from selenium.webdriver.support.ui import WebDriverWait
# from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
import time
import mysql.connector #连接数据库
conn = mysql.connector.connect(host='192.168.1.10', port = 3306, user='root', password='abcd@1234', database='lingyunzhubao')
# 操作游标, 获取python操作者mysql命令
cursor = conn.cursor()
# 测试店铺
shopname = "测试20170927"
query_sql ='select * from jch_store t where t.store_name= "%s"' %shopname #此处没有逗号,加逗号会变成tuble类型
delete_sql = 'delete from jch_store where store_name = "%s"' %shopname
cursor.execute(query_sql)
result =cursor.fetchall()
if result is not None:
print("删除已有店铺")
cursor.execute(delete_sql)
conn.commit()
else:
print(shopname +" 该店铺可新增") # 火狐浏览器打开
# driver = webdriver.Firefox()
# driver = webdriver.Ie() # 谷歌,多加几行是为了去掉提示:Chrome正收到自动测试软件的控制
options = webdriver.ChromeOptions()
options.add_argument('disable-infobars')
driver = webdriver.Chrome(chrome_options=options) driver.get("http://192.168.1.10:8080/jcho2o/login/login.do") #最大化浏览器
driver.maximize_window()
#等待浏览器打开
print("登录麦珠宝后台")
time.sleep(3)
driver.find_element_by_id("userName").send_keys("")
driver.find_element_by_id("passWord").send_keys("")
time.sleep(1)
driver.find_element_by_xpath('//*[@id="form1"]/div[6]/button').click()
time.sleep(1)
print("点击[店铺信息设置]")
driver.find_element_by_xpath('//*[@id="side-menu"]/li[1]/a/span').click()
print("进入[店铺信息界面],等待3秒,点击[新增店铺]")
time.sleep(0.5) # 切换frame
driver.switch_to.frame("iframe0")
# print (driver.find_element_by_xpath('//div[text()="新增店铺"]').text)
driver.find_element_by_xpath('//div[text()="新增店铺"]').click() # 尼玛终于找到了 print("进入新增页面,等待3秒后,输入数据")
# 切回默认页面
driver.switch_to.default_content()
time.sleep(0.5)
driver.switch_to.frame("iframe15")
time.sleep(0.5) driver.find_element_by_xpath('//*[@id="txt_shop_name"]').send_keys("测试20170927")
time.sleep(0.3)
# 点击店铺地址下拉框
driver.find_element_by_xpath('//span[text()="请选择省市区"]').click()
#等待3秒,选择省份
time.sleep(0.5)
driver.find_element_by_xpath('//a[text()="北京市"]').click()
time.sleep(0.5)
driver.find_element_by_xpath('/html/body/div/div/div[4]/div[1]/div/div/div[2]/div[2]/dl/dd/a[1]').click()
time.sleep(0.5)
driver.find_element_by_xpath('/html/body/div/div/div[4]/div[1]/div/div/div[2]/div[3]/dl/dd/a[4]').click()
time.sleep(0.5)
driver.find_element_by_id("txt_shop_address_details").send_keys("具体店铺地址")
print("填写店铺收货资料")
# 滑动滚动条下滑到底部
# scroll_to_position = driver.find_element_by_xpath('//button[text()="保存"]')
# ActionChains(driver).move_to_element(scroll_to_position).perform()
# time.sleep(1) #将页面滚动条拖到底部
js="var q=document.documentElement.scrollTop=10000"
driver.execute_script(js)
time.sleep(2) # 输入店铺收货人
driver.find_element_by_id("txt_addressee_name").send_keys("店铺收货人")
# 输入店铺联系方式
driver.find_element_by_id("txt_addressee_phone").send_keys("")
#输入店铺收货地址
driver.find_element_by_xpath("/html/body/div/div/div[10]/div[1]/span/span[1]").click()
time.sleep(0.5)
driver.find_element_by_xpath("/html/body/div/div/div[10]/div[1]/div/div/div[2]/div[1]/dl[1]/dd/a[6]").click() time.sleep(0.5)
driver.find_element_by_xpath("/html/body/div/div/div[10]/div[1]/div/div/div[2]/div[2]/dl/dd/a[1]").click()
time.sleep(0.5)
driver.find_element_by_xpath("/html/body/div/div/div[10]/div[1]/div/div/div[2]/div[3]/dl/dd/a[3]").click()
time.sleep(0.5)
driver.find_element_by_id("txt_address_detail").send_keys("琶洲国际采购中心 test")
time.sleep(0.5)
driver.find_element_by_xpath('//button[text()="保存"]').click()
time.sleep(0.5)
driver.switch_to.default_content() cursor.execute(query_sql)
# fetchall()则是接收全部的返回结果行 row就是在python中定义的一个变量,用来接收返回结果行的每行数据
new_result = cursor.fetchall()
if new_result is not None:
print("新增店铺成功")
else:
print("新增店铺失败")
selenium自动新增店铺的更多相关文章
- [Python爬虫] Selenium自动访问Firefox和Chrome并实现搜索截图
前两篇文章介绍了安装,此篇文章算是一个简单的进阶应用吧!它是在Windows下通过Selenium+Python实现自动访问Firefox和Chrome并实现搜索截图的功能. [Pyth ...
- Python + Selenium 自动发布文章(一):开源中国
https://blog.csdn.net/qq_28804275/article/details/80891949 https://blog.csdn.net/qq_28804275/article ...
- 自动化测试: Selenium 自动登录授权,再 Requests 请求内容
Selenium 自动登录网站.截图及 Requests 抓取登录后的网页内容.一起了解下吧. Selenium: 支持 Web 浏览器自动化的一系列工具和库的综合项目. Requests: 唯一的一 ...
- MY_使用selenium自动登录126/163邮箱并发送邮件
转自:https://www.cnblogs.com/yin-tao/p/7244082.html 我使用的是python2.7.13+selenium ps:几天之前,我曾多次尝试写这段代码,但是在 ...
- 爬虫实战【10】利用Selenium自动登陆京东签到领金币
今天我们来讲一下如何通过python来实现自动登陆京东,以及签到领取金币. 如何自动登陆京东? 我们先来看一下京东的登陆页面,如下图所示: [插入图片,登陆页面] 登陆框就是右面这一个框框了,但是目前 ...
- 用selenium自动加载浏览器下载图片
上一篇用requests这个库进行图片的批量下载,只所以可以这样做,是因为豆瓣提供的XHR的接口API,而且接口返回的数据类型为json格式,所以使用起来非常的方便,但是有时候我们需要分析html格式 ...
- selenium自动爬取网易易盾的验证码
我们在爬虫过程中难免会遇到一些拦路虎,比如各种各样的验证码,时不时蹦出来,这时候我们需要去识别它来继续我们的工作,接下来我将爬取网一些滑动验证码,然后通过百度的EasyDL平台进行数据标注,创建模型, ...
- Python+selenium自动循环扔QQ邮箱漂流瓶
Python代码如下: # coding=utf-8 from selenium import webdriver from time import sleep from random import ...
- Python+selenium自动循环送贺卡
Python源代码如下: # coding=utf-8 from selenium import webdriver from time import sleep from random import ...
随机推荐
- toString和toLocalString
toLocalString()是调用每个数组元素的 toLocaleString() 方法,然后使用地区特定的分隔符把生成的字符串连接起来,形成一个字符串. toString()方法获取的是Strin ...
- 2019年开发App记录
Pod 制作私有库参考 https://www.jianshu.com/p/f903ecf8e882 Pod私有库的升级 改代码部分,到Example文件夹执行pod install ,修改XXX.s ...
- 关了浏览器再开,怎么session还在?
关了浏览器session当然仍然存在,因为session是储存在服务器端的,而服务器是不可能知道你有没有关掉浏览器. 服务器只是简单的保持session接受用户请求,只有当session一段时间没有被 ...
- php array_values()函数 语法
php array_values()函数 语法 作用:返回数组的所有值(非键名)富瑞华大理石平台 语法:array_values(array) 参数: 参数 描述 array 必需.规定数组. ...
- [USACO19JAN]Shortcut题解
本题算法:最短路树 这是个啥玩意呢,就是对于一个图,构造一棵树,使从源点开始的单源最短路径与原图一模一样.怎么做呢,跑一边Dijkstra,然后对于一个点u,枚举它的边,设当前的边为cur_edge, ...
- 特征提取算法(4)——LoG特征提取算法
目录 1.介绍 2.LoG原理 3.数学原理 4.模板性质 1.介绍 LoG(DoG是一阶边缘提取)是二阶拉普拉斯-高斯边缘提取算法,先高斯滤波然后拉普拉斯边缘提取. Laplace算子对通过图像进行 ...
- Codeforces Round #587 (Div. 3) F. Wi-Fi(单调队列优化DP)
题目:https://codeforces.com/contest/1216/problem/F 题意:一排有n个位置,我要让所有点都能联网,我有两种方式联网,第一种,我直接让当前点联网,花费为i,第 ...
- iOS环境搭建
Xcode安装 一定要在App Store上下载XCode . git config常用配置 设置lg命令 查看分支图 git config --global alias.lg "log - ...
- windows编程,消息函数中拦截消息的问题
很多年没有写windows窗口程序了,今天自制基于vulkan的程序时遇到了一些问题,部分代码如下: LRESULT CALLBACK XWindow::WndProc(HWND hWnd, UINT ...
- ThinkPHP框架实现rewrite路由配置
rewrite路由形式: //网址/分组/控制器/方法 配置实现rewrite路由的配置: 1. 修改apache的配置 先修改httpd.conf配置文件中的AllowOverrideAll,全 ...